Оцените симуляцию и сравните выходные данные

Обзор

Функциональное тестирование требует поведения симуляции оценки и сравнения симуляции выход к ожидаемому выходу. Например, вы можете:

  • Анализируйте поведение сигнала во временном интервале после события.

  • Сравните две переменные в процессе моделирования.

  • Сравните данные о timeseries с базовой линией.

  • Найдите peaks в данных о timeseries и сравните peaks с шаблоном.

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

Можно включать оценки в тест, модель или тестовую обвязку.

  • В тесте вы можете:

    • Сравните симуляцию выход с базовыми данными.

    • Сравните выход двух симуляций.

    • Постобработайте симуляцию выход с помощью пользовательского скрипта.

    • Оцените временные свойства с помощью логических и временных оценок.

  • В тестовой обвязке или модели, вы можете:

    • Проверьте логические условия во времени выполнения с помощью verify оператор, который возвращает pass, fail, или untested закончитесь для каждого временного шага.

    • Используйте assert операторы, чтобы остановить симуляцию на отказе.

    • Используйте блоки из Model Verification или Simulink® Библиотека Design Verifier™.

Сравните данные моделирования с базовыми данными или другой симуляцией

Базовые критерии являются допусками к данным моделирования по сравнению с базовыми данными. Эквивалентные критерии являются допусками к двум наборам данных моделирования, каждого от различной симуляции. Можно установить погрешности для числовых, перечисленных, или логических данных.

Установите числовую погрешность с помощью абсолютных или относительных погрешностей. Установите использование допусков времени ведущие и отстающие допуски. Для числовых данных можно задать абсолютную погрешность, относительную погрешность, ведущий допуск или отстающий допуск. Для перечислимых или логических данных можно задать продвижение или отставание допуска. Результаты вне сбоя допусков. Для получения дополнительной информации смотрите Установленные Погрешности Сигнала.

Задайте базовые данные и допуски в разделе Test Manager Baseline Criteria или Equivalence Criteria. Результаты появляются в панели Results and Artifacts. График сравнения отображает данные и различия.

Эта диаграмма показы пример базовых критериев. Базовые критерии устанавливают относительную погрешность для сигналов output torque и vehicle speed.

Baseline criteria table

Постобработайте результаты с пользовательским скриптом

Можно анализировать данные моделирования с помощью специализированных функций при помощи пользовательского скрипта критериев. Например, вы могли найти peaks в данных о timeseries с помощью функций Curve Fitting Toolbox™. Пользовательским скриптом критериев является MATLAB® код, который выполняется после симуляции. Пользовательские скрипты критериев используют среду Модульного теста MATLAB.

Напишите пользовательский скрипт критериев в разделе Test Manager Custom Criteria теста. Пользовательские результаты критериев появляются в панели Results and Artifacts. Результаты показывают для отдельных проверок Модульного теста MATLAB. Для получения дополнительной информации смотрите Результаты испытаний Процесса с Пользовательскими Скриптами.

Этот простой тест пользовательские критерии проверяет что значение slope больше 0.

% A simple custom criteria
test.verifyGreaterThan(slope,0,'slope must be greater than 0')

Оценки во время выполнения

verify Операторы

Для общих оценок во время выполнения используйте verify операторы. verify оператор выполняет логическое выражение и возвращает передачу, сбой или непротестированный результат для каждого шага времени симуляции. verify операторы могут включать временный и условный синтаксис. Отказ не останавливает симуляцию.

Введите verify операторы в блоке Test Assessment или Test Sequence, с помощью Тестового Редактора Последовательности. Можно использовать verify операторы с или без теста в менеджере по Тесту. Без теста результаты появляются в Инспекторе Данных моделирования. С тестом результаты появляются в менеджере по Тесту.

Для получения информации об использовании verify операторы в вашей модели, смотрите, Оценивают Симуляцию модели Используя, проверяют Операторы.

assert Операторы

Можно использовать assert операторы в блоке Test Assessment или Test Sequence, чтобы прекратить выполнять недопустимый тест. assert оценивает логический аргумент, но различающийся verifyутверждение симуляция остановок. Отказы появляются как ошибки симуляции. Чтобы сделать результаты легче интерпретировать, добавьте дополнительное сообщение.

Например, если компонент под тестом выходные параметры два сигнала h и k, и тест требует h и k инициализировать к 0, используйте assert остановить тест, если сигналы не инициализируют. Этот assert оператор возвращает сообщение 'Signals must initialize to 0' если логическое условие h == 0 && k == 0 сбои.

Assert statement in a test step

Оценки для тестирования в реальном времени

Если вы используете тест в реальном времени, или если вы хотите снова использовать настольный тест симуляции на цели в реальном времени, используйте verify операторы. verify операторы встраиваются в приложение реального времени и работаются цель в реальном времени. Смотрите Оценивают Симуляцию модели Используя, проверяют Операторы.

Блоки Model Verification

Используйте блоки из библиотеки Simulink Model Verification или библиотеки Simulink Design Verifier, чтобы оценить сигналы в вашей модели или тестовой обвязке. pass, fail, или untested результаты каждого блока появляются в менеджере по Тесту. Для получения дополнительной информации смотрите, Исследуют Результаты Model Verification при помощи Инспектора Данных моделирования.

Примечание

Все библиотечные блоки Model Verification, включая блок Assertion, не приводят к результатам верификации, когда используется в Для Каждого подсистемы. Используйте блок Test Sequence с verify операторы вместо этого.

Примеры оценок во время выполнения

Эта тестовая обвязка в качестве примера включает:

  • verify оператор в блоке Test Assessment, проверяя тот signalC >= 5.

  • Блок Assertion, проверяющий тот throttle >= 0.

Test harness with Test Assessment and Test Sequence blocks

Логические и временные оценки

Логические и временные оценки оценивают временные свойства, такие как синхронизация модели и упорядоченное расположение события по записанным данным. Используйте временные оценки для дополнительной системной верификации после того, как симуляция будет завершена. Временные оценки сопоставлены с тестами в менеджере по Тесту. Автор временные оценки при помощи Logical and Temporal Assessments Editor. Смотрите Оценивают Временную Логику при помощи Временных Оценок для получения дополнительной информации.

Временные результаты оценки оценки появляются в панели Results and Artifacts. Используйте Дерево выражений, чтобы исследовать результаты подробно. Если у вас есть лицензия Simulink Requirements™, можно установить трассируемость между требованиями и временными оценками путем создания ссылок требования. Смотрите Ссылку на Требования для получения дополнительной информации.

Похожие темы