sltest.plugins. Класс ModelCoveragePlugin

Пакет: sltest.plugins

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

Описание

Класс sltest.plugins.ModelCoveragePlugin создает объект коллекции покрытия для рабочих тестов Simulink® Test™ со средой MATLAB® Unit Test. Добавьте объект sltest.plugins.ModelCoveragePlugin в исполнителя тестов.

Создание

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

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

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

Свойства

развернуть все

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

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

Атрибуты:

SetAccess

общественность

GetAccess

общественность

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

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

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

Атрибуты:

SetAccess

общественность

GetAccess

общественность

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

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

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

Атрибуты:

SetAccess

общественность

GetAccess

общественность

Примеры

свернуть все

Этот пример показывает, как использовать MATLAB® Unit Test, чтобы собрать покрытие для тестового прогона на модели 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® Unit Test из тестового файла.

tf = sltest.testmanager.TestFile(fullfile(matlabroot,'toolbox','simulinktest',...
    'simulinktestdemos','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/BR2019ad_1062519_57051/mlx_to_docbook1/tpdb92a579_e06d_4839_922e_9b7efffbbc44.html
APResult = 
  TestResult with properties:

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

Totals:
   0 Passed, 1 Failed (rerun), 0 Incomplete.
   6.6936 seconds testing time.

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

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

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

sltest.testmanager.clearResults;
sltest.testmanager.clear;
sltest.testmanager.close;

Введенный в R2018a