sltest.plugins.ModelCoveragePlugin class

Пакет: sltest.plugins

Сбор покрытия модели с помощью среды MATLAB Модульный Тест

Описание

The sltest.plugins.ModelCoveragePlugin создает отчеты о покрытии и позволяет настраивать метрики покрытия для выполнения Simulink® Test™ и MATLAB®Simulink на основе тестов с средой Модульного теста MATLAB. Установите требуемые sltest.plugins.ModelCoveragePlugin значения свойств и добавить образец sltest.plugins.ModelCoveragePlugin на исполнителя тестов. Для тестов Simulink на основе MATLAB, вызовы simulate метод собирает покрытие во время тестового запуска. Эти результаты покрытия доступны в результатах Test Manager.

Создание

mcp = sltest.plugins.ModelCoveragePlugin(Properties) создает объект плагина покрытия модели mcp с заданными свойствами.

Можно также импортировать плагин, затем использовать имя класса, чтобы создать образец плагина:

import sltest.plugins.ModelCoveragePlugin
mcp = ModelCoveragePlugin(Properties)

Свойства

расширить все

Свойство, которое отключает или включает набор покрытия для моделей, на которые ссылаются блоки Model.

Пример: 'RecordModelReferenceCoverage',true

Атрибуты:

SetAccess
public
GetAccess
public

Свойство, которое задает опции набора покрытия для sltest.plugins.coverage.CoverageMetrics объект.

Пример: 'Collecting',covSettings

Пример: 'Collecting',CoverageMetrics('MCDC',true,'Decision',false,'Condition',false)

Атрибуты:

SetAccess
public
GetAccess
public

Свойство, которое задает опции отчета о покрытии с sltest.plugins.coverage.ModelCoverageReport.

Пример: 'Producing',mcr

Пример: 'Producing',ModelCoverageReport('reports/coverage/modelcoverage')

Атрибуты:

SetAccess
public
GetAccess
public

Примеры

свернуть все

В этом примере показано, как использовать MATLAB ® Модульный Тест для сбора покрытия для тестов, выполняемых на модели Simulink ®.

Вы запускаете тесты в AutopilotTestFile.mldatx тестовый файл при сборе измененного покрытия условия/решения (MCDC).

1. Импортируйте исполнитель тестов и плагины для примера.

import matlab.unittest.TestRunner
import sltest.plugins.ModelCoveragePlugin
import sltest.plugins.coverage.CoverageMetrics

2. Создайте объект плагина покрытия модели и объект метрики покрытия. В этом примере вы используете покрытие MCDC и записываете покрытие для ссылочных моделей.

mcdcMet = CoverageMetrics('Decision',false,'Condition',false,'MCDC',true);

covSettings = ModelCoveragePlugin('RecordModelReferenceCoverage',true,...
    'Collecting',mcdcMet);

3. Создайте тестовый набор MATLAB ® Модульный Тест из тестового файла.

tf = sltest.testmanager.TestFile('AutopilotTestFile.mldatx');
APSuite = testsuite(tf.FilePath);

4. Создайте исполнитель тестов без каких-либо плагинов, затем добавьте плагин покрытия к раннеру.

APRun = TestRunner.withNoPlugins();
addPlugin(APRun,covSettings);

5. Запустите набор.

% Turn off the command line warnings.
warning off Stateflow:cdr:VerifyDangerousComparison
warning off Stateflow:Runtime:TestVerificationFailed

APResult = run(APRun,APSuite)
Coverage Report for RollAutopilotMdlRef/Roll Reference
    /tmp/BR2021ad_1657350_5204/mlx_to_docbook1/tp45fcfabf_e6b7_4225_ac8a_a1da536fa038.html
APResult = 
  TestResult with properties:

          Name: 'AutopilotTestFile > Basic Design Test Cases/Requirement 1.3 Test'
        Passed: 0
        Failed: 1
    Incomplete: 0
      Duration: 5.1177
       Details: [1x1 struct]

Totals:
   0 Passed, 1 Failed, 0 Incomplete.
   5.1177 seconds testing time.

6. Для просмотра отчета о покрытии можно открыть ссылку в командной строке вывода.

Очистка. Очистить результаты и повторно включить предупреждения.

warning on Stateflow:cdr:VerifyDangerousComparison
warning on Stateflow:Runtime:TestVerificationFailed

sltest.testmanager.clearResults;
sltest.testmanager.clear;
sltest.testmanager.close;
Введенный в R2018a