В этом руководстве вы настраиваете и запускаете два теста:
Первый тест проверяет, соответствует ли модель требованию.
Второй тест сравнивает результат симуляции с базовыми данными.
Откройте sltestCruiseControlDefective
модель в matlab/examples/simulinktest/main
папка.
Чтобы запустить Диспетчер тестов, на вкладке Apps, в разделе Верификация модели, валидация и тест, нажмите Simulink Test. На вкладке Tests нажмите Simulink Test Manager.
В этом примере вы создаете структуру тестового файла, добавляете к нему контрольный пример и запускаете тест.
Установите текущую папку в папку с возможностью записи.
Создайте тестовый файл. На панели инструментов Диспетчера тестов выберите New > Test File.
Назовите файл Tutorial Tests
и сохраните его.
Тестовый файл содержит один или несколько тестовых наборов, а тестовые наборы содержат один или несколько тесты. Используйте эту структуру для организации связанных тестов. Эта структура также помогает вам запускать тесты индивидуально или запускать все тесты в файле или наборе.
Контрольным примером по умолчанию является регрессионный тест. Преобразуйте его в тест Simulation. Выберите тест и в контекстном меню выберите Convert to > Simulation Test и нажатием кнопки Yes для подтверждения преобразования.
Переименуйте тестовое My Verification Test
. Можно использовать контекстное меню в тестовом браузере и выбрать Rename. Или можно кликнуть имя и ввести новое в тест.
Модель использует блок Verification Subsystem из Simulink® Design Verifier™ библиотеки. Подсистема содержит блок Assertion, который проверяет, отключается ли система, если тормоз был применен в течение трех временных шагов. Логгирование сигнала включено для выходов блоков Signal Editor.
Установите тест, чтобы использовать sltestCruiseControlDefective
модель. В Диспетчере тестов в разделе System Under Test нажмите кнопку Use current model.
Можно запустить этот тест, не задавая других оценок, потому что модель содержит блок Assertion. Использование Test Manager, в отличие от симуляции самой модели, позволяет вам просматривать, управлять и экспортировать результаты. Кроме того, он настраивает среду тестирования для добавления дополнительных тестов, сбора базовых данных и повторного использования тестов для других операций верификации, таких как верификация генерации кода.
Щелкните Run на панели инструментов Test Manager.
При нажатии кнопки Run левая навигация изменяется с Test Browser на Results and Artifacts панель.
Исследуйте результаты. Не удалось выполнить тест. Щелкните правой кнопкой мыши по последнему результату и выберите Expand All Under, чтобы просмотреть все результаты. Не удалось выполнить тест из-за BrakeAssertion
сбой.
Щелкните BrakeAssertion и установите флажок, чтобы визуализировать результаты. Вы можете увидеть, что тест не прошел через 23 секунды.
Постройте график сигналов с выхода. На панели инструментов Data Inspector нажмите кнопку Subplots и выберите три графика.
После того, как вы создаете графики, BrakeAssertion
сигнал остается на первом графике. Щелкните график, на котором необходимо отобразить сигнал, а затем щелкните сигнал. Используя этот метод, добавьте Input 3
(вход тормоза) на графике 2 и throt
на графике 3.
Эти графики показывают вам, что, когда тормоз включается (Вход 3), дроссель остается включенным. Дроссель должен перейти к 0.
Чтобы найти источник отказа в модели, в результатах тестирования щелкните правой кнопкой мыши BrakeAssertion отказа и выберите Highlight in Model. Модель подсвечивает BrakeAssertion
блок.
Базовые тесты сравнивают выходные параметры симуляции с ожидаемыми выходами. В исправленной версии модели дроссель переходит к 0, если тормоз применяется в течение трех временных шагов. Поскольку модель верна, вы хотите зафиксировать правильные результаты в тест, против которой нужно протестировать в будущем.
Откройте модель sltestBasicCruiseControlHarnessModel
.
В тестовом браузере выберите тестовый файл Tutorial Tests
. На панели инструментов Диспетчера тестов выберите New > Baseline Test.
Тестовый файл содержит новый тестовый набор, который содержит новый базовый тест.
Переименуйте тест My Baseline Test
.
В контрольном примере под System Under Test нажмите Use current model.
Можно захватить выходы теста базового уровня в Test Manager как Excel® файл или MAT-файл. Кроме того, можно добавить внешний файл к тесту в качестве опорной структуры.
В тест под Baseline Criteria нажмите Capture.
Установите File format значение Excel
, введите baseline1
имя файла и нажмите кнопку Capture.
В тест добавляются базовые данные - выход из записанных сигналов и двух блоков Outport.
Откройте файл Excel и наблюдайте за данными. Выберите опорную структуру и нажатие кнопки Edit. Значения timeseries появляются для каждого из записанных сигналов и выходов в модели. Закройте файл Excel.
Одной из причин запуска базового теста является регрессионная проверка, чтобы увидеть, все еще ли выходы модели совпадают с базовым уровнем. В этом примере, поскольку вы только что создали базовую линию, вы ожидаете, что тест пройдет.
Выберите тест и нажатие кнопки Run. Результаты совпадают с базовой линией, и тест проходит. Когда вы расширяете результаты, вы можете увидеть, что verify
операторы теперь проходят.