verify
и тесты в реальном времениВыполните тестирование в реальном времени на целевом компьютере и проверьте поведение системы по требованиям.
Этот пример демонстрирует тестирование системы управления проектора с помощью симуляции модели и выполнения в реальном времени на целевом компьютере. Тесты проверяют контроллер по его требованиям с помощью тестовых последовательностей, которые осуществляют модели контроллеров верхнего уровня. Диспетчер использует вход кнопки и вход датчика температуры и выходные сигналы, управляющие вентилятором, скоростью вентилятора и лампой проектора.
Этот пример использует Simulink® Real-Time™. Перед началом рассмотрите системные требования Simulink Real-Time. Этот пример также использует документ требований в Microsoft® формат Word.
Установите тестовый файл, модель, и используйте имена для примера.
testFile = 'sltestProjectorCtrlTests.mldatx'; testHarness = 'Req_scenario_4'; model = 'sltestProjectorController';
Откройте модель:
open_system(model)
Модель и тестовые наборы соединяются с требованиями, заданными в ProjectorControlRTRequirements.slreqx
. Откройте Редактор Требований, чтобы просмотреть эти требования. Функциональные требования сгруппированы под индексом 1 и картой к сущностям в модели Simulink. Используйте Highlight Links
в Requirements
приложение в модели, чтобы проследить требования до их реализации. Тестовые требования сгруппированы под индексом 2 и картой к тестам в менеджере по тесту.
open('ProjectorControlRTRequirements.slreqx');
Подсветите требования в тестовой обвязке и протестируйте редактор последовательности, чтобы просмотреть соединенные элементы.
sltest.harness.open(model,testHarness)
rmi('highlightModel',testHarness)
close_system((model),0)
Откройте тестовый файл путем ввода: open(testFile)
Тестовый файл содержит два тестовых набора, каждый из которых тестирует четыре сценария. Один набор симулирует модель, в то время как второе выполняет тесты на целевом компьютере в реальном времени. Тестовые обвязки используют блок Test Assessment, который тестирует требования высокого уровня. Прежде, чем запустить пример:
Сконфигурируйте свой целевой компьютер с помощью Simulink Real-Time Explorer.
Соединитесь со своим целевым компьютером.
Если ваш целевой компьютер не является целью по умолчанию, Целевым компьютером обновления в Системе каждого теста Под Экспериментальным участком.
Для получения дополнительной информации о настройке в реальном времени смотрите Конфигурацию системы (Simulink Real-Time).
Запустите тестовый набор симуляции модели. После того, как симуляция завершается, нажмите Results и панель Artifacts в менеджере по тесту.
Расширьте результаты Req_scenario_4 и расширьте раздел Verify Statements. verify
операторы демонстрируют сбой, передачу и непротестированные результаты:
Контроллер не действует в высокотемпературном или перегревает режим, таким образом, связанный verify
операторы не тестируются.
Контроллер передает требование, чтобы, если лампа включена, вентилятор был также на: verify_lamp_implies_fan
.
Диспетчер проходит тест, которого избегает система, если on_off кнопка нажимается, когда температура выше предела: verify_sc4_on
.
Контроллер проваливает тест, который отключает система, если on_off кнопка нажимается, когда температура выше предела: verify_sc4_off
. Решение этого отказа требует изменения OnOff Check
подсистема в основной модели.
Для получения дополнительной информации смотрите, Оценивают Симуляцию модели Используя, проверяют Операторы.
Выберите verify_sc4_off
и verify_lamp_implies_fan
результаты визуализировать verify
результаты оператора.
Если тесты выполнились, состояние верификации автоматически доступно в Редакторе Требований. Перейдите к Редактору Требований и включите Verification Status
в View
разделите, чтобы видеть совокупное тестовое состояние.
Тестовый набор в реальном времени проверяет, что выполнение в реальном времени заканчивается результаты симуляции модели соответствия, и что verify
передача операторов. Тестовые обвязки регистрируют данные с помощью Логарифмических блоков Файла.
Установите текущую рабочую директорию на перезаписываемую директорию. В менеджере по тесту запустите тестовый набор в реальном времени.
Раздел Baseline Criteria Result показывает сравнения записанных данных в реальном времени к данным, собранным от симуляции модели. Результаты идентичны.
Раздел Verify Statements показывает подобные результаты симуляции модели.
close_system(model,0) sltest.testmanager.clear; sltest.testmanager.clearResults; clear testFile testHarness model; slreq.clear;