Тестовые модели Используя модульный тест MATLAB

Можно использовать среду MATLAB® Unit Test, чтобы запустить тесты, созданные в Simulink® Test™. Используя среду Модульного теста MATLAB:

  • Позволяет вам выполнять тесты модели вместе со скриптами Модульного теста MATLAB, функциями и классами.

  • Включает тестирование модели и кода с помощью той же среды.

  • Включает интеграцию с системами непрерывного интегрирования (CI), такими как Jenkins™.

Полный рабочий процесс

Запускать тесты с Модульным тестом MATLAB:

  1. Создайте TestSuite из файла Simulink Test.

  2. Создайте TestRunner.

  3. Создайте сменные объекты настроить TestRunner. Например:

    • matlab.unittest.plugins.TAPPlugin производит поток результатов согласно Test Anything Protocol для использования с определенными системами CI.

    • sltest.plugins.ModelCoveragePlugin задает набор покрытия модели и делает результаты покрытия доступными из командной строки.

  4. Добавьте плагины в TestRunner.

  5. Запустите тест с помощью run метод или запущенные тесты в параллели с помощью runInParallel метод.

Факторы

При выполнении тестового использования Модульный тест MATLAB рассмотрите следующее:

  • Если вы отключаете тест в менеджере по Тесту, тест отфильтрован с помощью Модульного теста MATLAB, и результат отражает не пройдено предположение.

Сравнение тестовой номенклатуры

Модульный тест MATLAB имеет аналогичные свойства к функциональности в Simulink Test. Например,

  • Если тест содержит итерации, Модульный тест MATLAB содержит параметризацию.

  • Если тестовый файл или тестовый набор содержат коллбэки, Модульный тест MATLAB содержит один или несколько фиксаторов коллбэков.

Итерации Теста и параметризация Модульного теста MATLAB

детали параметризации соответствуют свойствам итерации.

Simulink Test

Matlab.unittest

Тип итерации: В виде сценария

свойство параметризации: ScriptedIteration

Тип итерации: Таблица

свойство параметризации: TableIteration

Имя итерации

Имя параметризации

Объект итерации теста

Значение параметризации

Протестируйте коллбэки и фиксаторы модульного теста MATLAB

Фиксаторы зависят от коллбэков, содержавшихся в тестовом файле. Фиксаторы не включают коллбэки теста, которые выполняются с самим тестом.

Коллбэки в Simulink Test

Фиксаторы в модульном тесте MATLAB

Коллбэки тестового файла

FileCallbacksFixture

Коллбэки тестового набора

SuiteCallbacksFixture

Файл и коллбэки набора

Неоднородный CallbacksFixture, содержа FileCallbacksFixture и SuiteCallbacksFixture

Никакие коллбэки

Никакой фиксатор

Основной рабочий процесс Используя MATLAB® Unit Test

В этом примере показано, как создать и запустить основной MATLAB® Unit Test для тестового файла, созданного в Simulink® Test™. Вы создаете тестовый набор, запускаете тест и отображаете диагностический отчет.

Прежде, чем запустить этот пример, временно отключите предупреждения тот результат отказов верификации.

warning off Stateflow:Runtime:TestVerificationFailed;
warning off Stateflow:cdr:VerifyDangerousComparison;

1. Создайте тестовый файл в менеджере по Тесту или запуститесь с существующего ранее тестового файла. В данном примере AutopilotTestFile тестирует компонент системы автопилота против нескольких требований, с помощью verify операторы.

2. Создайте TestSuite от тестового файла.

apsuite = testsuite('AutopilotTestFile.mldatx');

3. Запустите тест, создав TestResult объект. Командное окно возвращает предупреждения в verify отказы оператора.

apresults = run(apsuite);
Running AutopilotTestFile > Basic Design Test Cases

================================================================================
Verification failed in AutopilotTestFile > Basic Design Test Cases/Requirement 1.3 Test.
    ---------------------
    Framework Diagnostic:
    ---------------------
    Failed criteria: Verification
    --> Simulink Test Manager Results:
            Results: 2020-Aug-20 14:25:16/AutopilotTestFile/Basic Design Test Cases/Requirement 1.3 Test
================================================================================
.
Done AutopilotTestFile > Basic Design Test Cases
__________

Failure Summary:

     Name                                                              Failed  Incomplete  Reason(s)
    ===============================================================================================================
     AutopilotTestFile > Basic Design Test Cases/Requirement 1.3 Test    X                 Failed by verification.

4. Чтобы посмотреть детали теста, отобразите Report свойство DiagnosticRecord объект. Запись показывает что проверка не выполнена во время теста.

apresults.Details.DiagnosticRecord.Report
ans = 
    'Verification failed in AutopilotTestFile > Basic Design Test Cases/Requirement 1.3 Test.
         ---------------------
         Framework Diagnostic:
         ---------------------
         Failed criteria: Verification
         --> Simulink Test Manager Results:
                 Results: 2020-Aug-20 14:25:16/AutopilotTestFile/Basic Design Test Cases/Requirement 1.3 Test'

Включите предупреждения.

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

Смотрите также

| | | |

Похожие темы