Можно тестировать компонент модели изолированно или как часть большей модели. Проверка в изоляции полезно для отладки алгоритма компонента и обеспечения готовности к повторному использованию компонента. Тестирование как часть большей модели рассматривает поведение компонента в ответ на определенные входы и выходы приложения.
Этот раздел представляет собой широкий обзор мероприятий по верификации, включая инструменты в дополнительных продуктах, которые можно использовать в рабочем процессе проверки.
Этот рисунок иллюстрирует проверку типа «verification» компонента в настройках с закрытой и разомкнутой системами.
Выберите свой подход к верификации компонентов:
Для симуляций замкнутой системы проверьте компонент в контексте его модели контейнера, зарегистрировав сигналы к этому компоненту и сохранив их в файле данных. Если эти сигналы не составляют полный тестовый набор, сгенерируйте модель тестовой обвязки и добавьте или измените контрольные примеры в Signal Builder.
Для симуляций разомкнутого контура проверьте компонент независимо от модели контейнера, извлечя компонент из его модели контейнера и создав модель тестовой обвязки для извлеченного компонента. Добавьте или измените тесты в Signal Builder и зарегистрируйте сигналы к компоненту в модели тестовой обвязки.
Подготовьте компонент к верификации.
Создание и логгирование тестов. Можно также объединить данные теста в один файл данных.
Файл данных содержит данные теста для симуляции компонента. Если вы не можете достичь ожидаемых результатов с определенным набором тестов, добавьте новые тесты или измените существующие тесты в файле данных и объедините их в один файл данных.
Продолжайте добавлять или изменять тесты, пока вы не достигнете тестового набора, который удовлетворяет целям вашего анализа.
Выполните тесты в циклическом или процессорном режиме.
После того, как у вас будет полный тестовый набор, вы можете:
Симулируйте модель и выполните тесты, чтобы:
Запись покрытия с помощью Simulink® Coverage™.
Запишите выходные значения, чтобы убедиться, что вы получите ожидаемые результаты.
Активируйте Генерацию кода Верификации (CGV) API, чтобы выполнить сгенерированный код для модели, которая содержит компонент в режиме симуляции, программном обеспечении в цикле (SIL) или процессоре в цикле (PIL).
Примечание
Чтобы выполнить модель в различных режимах выполнения, вы используете CGV API, чтобы проверить числовую эквивалентность результатов. Для получения дополнительной информации о CGV API, смотрите Programmatic Code Верификация (Embedded Coder).
Этот рабочий процесс иллюстрирует общие шаги для тестирования переиспользуемых компонентов, таких как:
Моделируйте блоки
Атомарные подсистемы
Stateflow® атомарные субдиаграммы
В зависимости от типа компонента выполните одно из следующих действий:
Моделировать блоки - Открыть ссылочную модель.
Атомарные подсистемы - Извлеките содержимое подсистемы в свою собственную модель Simulink.
Атомарные субдиаграммы - Извлечь содержимое атомарной субдиаграммы Stateflow в свою собственную модель Simulink.
Создайте модель тестовой обвязки для:
Ссылка на модель
Извлеченная модель, которая содержит содержимое атомарной подсистемы или атомарной субдиаграммы
Добавьте или измените тесты в Signal Builder в модели тестовой обвязки.
Логгирование входных сигналов из Signal Builder в тестовый модуль.
Повторяйте шаги 3 и 4, пока вы не будете удовлетворены тестовым набором.
Объедините данные теста в один файл.
В зависимости от ваших целей, выполните одно из следующих действий:
Выполните тесты для:
Запись покрытия.
Запишите выходные значения и убедитесь, что они равны ожидаемым значениям.
Активируйте Генерацию кода Верификации (CGV) API, чтобы выполнить тесты в режиме «программное обеспечение в цикл» (SIL) или «процессор в цикл» (PIL) на сгенерированном коде для модели, которая содержит компонент.
Если тесты не достигают ожидаемых результатов, повторите шаги с 3 по 5.
Используйте системный анализ для:
Проверьте блок Model в контексте контейнерной модели блока.
Анализируйте контроллер с обратной связью.
Логгирование входных сигналов к компоненту путем симуляции модели контейнера или анализ модели с помощью программного обеспечения Simulink Design Verifier™.
Если вы хотите добавить тестовые примеры к своему тестовому набору или изменить существующие тесты, создайте модель тестовой обвязки с записанными сигналами.
Добавьте или измените тесты в Signal Builder в модели тестовой обвязки.
Логгирование входных сигналов из Signal Builder в тестовый модуль.
Повторяйте шаги 3 и 4, пока вы не будете удовлетворены тестовым набором.
Объедините данные теста в один файл.
В зависимости от ваших целей, выполните одно из следующих действий:
Выполните тесты для:
Запись покрытия.
Запишите выходные значения и убедитесь, что они равны ожидаемым значениям.
Активируйте Генерацию кода Верификации (CGV) API, чтобы выполнить тесты в режиме «программное обеспечение в цикл» (SIL) или «процессор в цикл» (PIL) на сгенерированном коде для модели.
Если тесты не достигают ожидаемых результатов, повторите шаги с 3 по 5.