sltest.plugins.coverage.CoverageMetrics class

Пакет: sltest.plugins.coverage

Задайте метрики покрытия для тестового прогона со средой Модульного теста MATLAB

Описание

Используйте sltest.plugins.coverage.CoverageMetrics класс, чтобы задать метрики покрытия. Передайте объект метрик покрытия объекту плагина покрытия модели.

sltest.plugins.coverage.CoverageMetrics классом является handle класс.

Атрибуты класса

HandleCompatible
true

Для получения информации об атрибутах класса см. Атрибуты класса.

Создание

cmo = sltest.plugins.coverage.CoverageMetrics(Properties) создает объект метрик покрытия с заданными свойствами.

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

import sltest.plugins.coverage.CoverageMetrics
cmo = CoverageMetrics(Properties)

Свойства

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

Включите или отключите набор Decision Coverage.

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

Атрибуты:

SetAccess
public
GetAccess
public

Включите или отключите набор покрытия условия.

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

Атрибуты:

SetAccess
public
GetAccess
public

Включите или отключите измененное условие / набор Decision Coverage.

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

Атрибуты:

SetAccess
public
GetAccess
public

Включите или отключите набор покрытия интерполяционных таблиц.

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

Атрибуты:

SetAccess
public
GetAccess
public

Включите или отключите набор покрытия диапазона сигнала.

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

Атрибуты:

SetAccess
public
GetAccess
public

Включите или отключите набор покрытия размера сигнала.

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

Атрибуты:

SetAccess
public
GetAccess
public

Включите или отключите набор покрытия блока Simulink Design Verifier.

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

Атрибуты:

SetAccess
public
GetAccess
public

Включите или отключите запись числа раз, которое блок насыщает на целочисленном переполнении.

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

Атрибуты:

SetAccess
public
GetAccess
public

Включите или отключите реляционное граничное покрытие.

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

Атрибуты:

SetAccess
public
GetAccess
public

Примеры

свернуть все

В этом примере показано, как использовать 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('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/BR2021bd_1751886_255755/mlx_to_docbook1/tp161b7ffb_1916_465b_b76b_9ff3cdc4b2a3.html
APResult = 
  TestResult with properties:

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

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

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

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

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

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