Трассировка артефакта

Модули в модели, тестирующей инструментальную панель

Модуль является функциональным объектом в вашей программной архитектуре, которую можно выполнить и протестировать независимо или как часть большего тестирования системы. Стандарты разработки программного обеспечения, такие как ISO 26262-6, задают цели для модульного тестирования. Модульные тесты обычно должны покрывать каждое из требований для модуля и должны продемонстрировать трассируемость между требованиями, тестами и модулем. Модульные тесты должны также достигнуть определенных целей покрытия для модуля, таких как измененное условие/Decision Coverage.

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

В Модели, Тестирующей Инструментальную панель, в панели Artifacts, модульный значок инструментальной панелиUnit dashboard icon. указывает на модуль. Если на модуль ссылается компонент, это появляется под компонентом. Если модуль ссылается на одну или несколько других моделей, те модели являются частью модуля. Модели, на которые ссылаются, появляются в папке Design под модулем и способствуют метрическим результатам для модуля.

Artifacts panel showing the model Component1 expanded to show the models Unit1 and Unit2. The panel also shows the model Component2 expanded to show Component3.

Чтобы задать, какие модели являются модулями, пометьте их в своем проекте и сконфигурируйте инструментальную панель, чтобы распознать, что метка, как показано в Задают Модели Как Компоненты и Модули.

Компоненты в модели, тестирующей инструментальную панель

Компонент является сущностью, которая интегрирует несколько тестируемых модулей вместе. Например, модель, что ссылки несколько модульных моделей могли быть моделью компонента. Компонент мог также интегрировать другие компоненты. Модель, Тестирующая Инструментальную панель, организует компоненты и модули под компонентами, которые ссылаются на них в панели Artifacts. Инструментальная панель не обеспечивает метрические результаты для компонентов, потому что компоненты обычно должны достигать различных целей тестирования, чем модули.

Если вы не задаете модели, которые рассматриваются компонентами, то инструментальная панель полагает, что модель компонент, если она ссылается на одну или несколько других моделей.

В Модели, Тестирующей Инструментальную панель, в панели Artifacts, значок компонентаComponent icon. указывает на компонент. Чтобы видеть модели под компонентом, расширьте узел компонента путем нажатия на стрелу рядом со значком компонента.

Чтобы задать модели, которые рассматриваются компонентами, пометьте их в своем проекте и сконфигурируйте инструментальную панель, чтобы распознать, что метка, как показано в Задают Модели Как Компоненты и Модули.

Задайте модели как компоненты и модули

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

  1. Откройте свой проект. Например, в командной строке, введите dashboardCCProjectStart. Этот проект в качестве примера, уже имеет компонент и модульные сконфигурированные модели.

  2. На MATLAB® окно Project панели инструментов, щелкните правой кнопкой по Labels, разделяют на области и нажимают Create New Category. Введите имя для категории, которая будет содержать ваши марки архитектуры тестирования, например, Testing Interface.

  3. Создайте метку для модулей. На панели Labels щелкните правой кнопкой по категории, которую вы создали, и нажмите Create New Label. Назовите метку Software Unit.

  4. Создайте другую метку для моделей компонента и назовите метку Software Component.

    Project window showing the labels pane in the bottom left corner. The Testing Interface category is expanded and the labels Software Component and Software Unit under the category.

    Модуль и метки компонента появляются под категорией в панели Labels.

  5. Пометьте модели в проекте как компоненты и модули. В панели проекта щелкните правой кнопкой по модели и нажмите Add label. В диалоговом окне выберите метку и нажмите OK. В данном примере примените эти метки:

    • db_Controller — Компонент программного обеспечения

    • db_ControlMode — Программный блок

    • db_DriverSwRequest — Программный блок

    • db_TargetSpeedThrottle — Программный блок

  6. Во вкладке Project, в разделе Tools, нажимают Model Testing Dashboard.

  7. Во вкладке Dashboard нажмите Options.

  8. В Окне параметров Проекта задайте категорию и метки, которые вы создали для компонентов и модулей. Для интерфейса компонента, набор Category к Testing Interface и Label к Software Component. Для модульного интерфейса, набор Category к Testing Interface и Label к Software Unit.

    Project Options dialog box showing categories and labels specified for component and unit interfaces.

  9. Нажмите Trace Artifacts. Инструментальная панель обновляет информацию о трассируемости в панели Artifacts и организует модели под моделями компонента, которые ссылаются на них. Если на модель не ссылается компонент, это появляется в верхнем уровне компонентов.

Для каждого модуля инструментальная панель показывает артефакты, которые прослеживают до модуля. Чтобы просмотреть метрические результаты для модуля, кликните по модульному имени в панели Artifacts.

Проследите артефакты до модулей для модели, тестирующей анализ

Чтобы определить, какие артефакты в пределах модуля, Модель, Тестирующая Инструментальную панель, анализирует ссылки трассируемости между артефактами и моделями программного блока в проекте. Панель Artifacts перечисляет модульные модели, представленные именами модели, организованными компонентами, которые ссылаются на них. Под каждым модулем панель показывает эти артефакты, которые прослеживают до модуля:

  • Функциональные требования

  • Спроектируйте артефакты

  • Тесты

  • Результаты испытаний

Artifacts panel showing units and traced artifacts

Чтобы видеть путь к трассируемости что инструментальная панель, найденная от артефакта до его модуля, щелкните правой кнопкой по артефакту и нажмите View trace to unit. График трассируемости открывается в новой вкладке в Модели, Тестирующей Инструментальную панель. График показывает связи и промежуточные артефакты, что инструментальная панель проследила от модуля до артефакта. Чтобы видеть тип трассируемости, которая соединяет два артефакта, установите свой курсор на стрелу, которая соединяет артефакты. Отношение трассируемости является или одним артефактом, содержащим другой или одной трассировкой артефакта до другого. Например, представление трассировки для функционального требования CC003_05 показывает, что это содержится в требовании Activating cruise control. Контейнерное требование прослеживает до функционального требования Set Switch Detection, который прослеживает до модуля db_DriverSwRequest.

Dashboard trace view for a functional requirement.

После списка моделей папка Untraced показывает артефакты, что инструментальная панель не проследила до моделей. Если артефакт возвращает ошибку во время анализа трассируемости, панель включает артефакт в папку Errors. Используйте информацию о трассируемости в этих разделах и в модулях, чтобы проверять, прослеживают ли артефакты тестирования до моделей, которые вы ожидаете. Чтобы видеть детали о предупреждениях и ошибках, которые инструментальная панель находит во время анализа артефакта, в нижней части Модели, Тестирующей диалоговое окно Инструментальной панели, нажимают Diagnostics.

Как вы редактируете и сохраняете артефакты в своем проекте, инструментальная панель отслеживает ваши изменения и указывает, могут ли данные о трассируемости в панели Artifacts быть устаревшими путем включения кнопки Trace Artifacts. Чтобы обновить данные о трассируемости, нажмите Trace Artifacts. Если кнопка не включена, инструментальная панель не обнаружила изменения, которые влияют на информацию о трассируемости.

Функциональные требования

Папка Functional Requirements показывает требования, где Type установлен в Functional и та трассировка к модульной модели непосредственно или через контейнерное требование, подсистему библиотеки или комбинацию двух. Для получения дополнительной информации о соединении требований, смотрите Ссылки Требования (Simulink Requirements).

Если требование не прослеживает до модуля, это появляется в папке Untraced Artifacts. Если требование не появляется в панели Artifacts, когда вы ожидаете его к, смотрите, что Требование отсутствует в Панели Артефактов.

Когда вы собираете метрические результаты для модуля, инструментальная панель анализирует подмножество требований, которые появляются в папке Functional Requirements. Метрики анализируют только требования, где Type установлен в Functional и это непосредственно соединяется с моделью со ссылкой, где Type установлен в Implements. Требование, которое прослеживает до модуля, но не имеет этих настроек, появляется в папке Functional Requirements, но не вносит метрические результаты для требований. Для поиска и устранения неисправностей метрических результатов для требований смотрите, Фиксируют требование, которое не приводит к метрическим результатам.

Спроектируйте артефакты

Папка Design показывает:

  • Файл модели, который содержит блок-схему для модуля.

  • Модели, что модульные ссылки.

  • Библиотеки, которыми частично или полностью пользуется модель.

  • Словари данных, которые соединяются с моделью.

Тесты

Папка Test Cases показывает тесты, которые прослеживают до модели. Это включает тесты, которые работают на и тестах модели, которые работают на подсистемах в модели при помощи тестовых обвязок. Создайте эти тесты в файле тестового набора при помощи Simulink® Test™.

Если тест не прослеживает до модуля, это появляется в папке Untraced Artifacts. Если тест не появляется в панели Artifacts, когда вы ожидаете его к, смотрите, что Тест отсутствует в Панели Артефактов.

Когда вы собираете метрические результаты для модуля, инструментальная панель анализирует подмножество тестов, которые появляются в папке Test Cases. Инструментальная панель анализирует только тесты, которые работают на модели. Тестовые обвязки подсистемы появляются в папке, но не способствуют метрикам, потому что они не тестируют целую модель. Для поиска и устранения неисправностей тестов в метрических результатах смотрите, Фиксируют тест, который не приводит к метрическим результатам.

Результаты испытаний

Папка Test Results показывает эти типы результатов испытаний от тестов, которые тестируют модель:

  • Saved test file icon Сохраненные результаты испытаний — результаты, которые вы собрали в менеджере по Тесту и экспортировали в файл результатов.

  • Temporary test results iconВременные результаты испытаний — результаты, которые вы собрали в менеджере по Тесту, но не экспортировали в файл результатов. Когда вы экспортируете результаты менеджера по Тесту, инструментальная панель анализирует сохраненные результаты вместо временных результатов. Кроме того, инструментальная панель прекращает распознавать временные результаты, когда вы закрываете проект или закрываете набор результатов в Проводнике Результата Simulink Test. Если вы хотите анализировать результаты на последующем сеансе тестирования или сеансе проекта, экспортируйте результаты в файл результатов.

Если результат испытаний не прослеживает до модуля, это появляется в папке Untraced Artifacts. Если результат испытаний не появляется в панели Artifacts, когда вы ожидаете его к, смотрите Результат испытаний отсутствовать в Панели Артефактов.

Когда вы собираете метрические результаты для модуля, инструментальная панель анализирует подмножество результатов испытаний, которые появляются в папке Test Results. Для поиска и устранения неисправностей результатов испытаний в метрических результатах инструментальной панели смотрите, Фиксируют результат испытаний, который не приводит к метрическим результатам.

Непрослеженные артефакты

Папка Untraced показывает артефакты, что инструментальная панель не проследила до моделей. Используйте папку Untraced, чтобы проверять, пропускают ли артефакты трассируемость к модулям. Когда вы добавляете трассируемость в артефакт, обновляете информацию в панели путем нажатия на Trace Artifacts. Модель, Тестирующая Инструментальную панель, не поддерживает анализ трассируемости для некоторых артефактов и некоторых ссылок. Если артефакт не прослеживается, когда вы ожидаете, что он проследит до модуля, смотрите решения для поиска и устранения неисправностей в Непрослеженных Артефактах.

Ошибки артефакта

Папка Errors показывает артефакты, которые возвратили ошибки, когда инструментальная панель выполнила анализ артефакта. Это некоторые ошибки, которые артефакты могут возвратить во время анализа трассируемости:

  • Артефакт возвращает ошибку, если он имеет несохраненные изменения, когда анализ трассируемости запускается.

  • Файл результатов испытаний возвращает ошибку, если он был сохранен в предыдущей версии Simulink.

  • Модель возвращает ошибку, если это не находится на пути поиска файлов.

Откройте эти артефакты и зафиксируйте ошибки. Затем чтобы анализировать трассируемость в инструментальной панели, нажмите Trace Artifacts.

Диагностика

Чтобы видеть детали об артефактах, которые вызывают предупреждения, ошибки и информационные сообщения во время анализа, в нижней части Модели, Тестирующей диалоговое окно Инструментальной панели, нажимают Diagnostics. Можно отфильтровать диагностические сообщения типом и очистить сообщения от средства просмотра.

Диагностические сообщения показывают:

  • Моделирование построений, которые не поддерживает инструментальная панель

  • Ссылки, которые не прослеживает инструментальная панель

  • Тестовые обвязки или случаи, которые не поддерживает инструментальная панель

  • Недостающее покрытие результатов испытаний или результаты симуляции

  • Артефакты, которые возвращают ошибки, когда инструментальная панель загружает их

  • Информация о коллбэках модели, которые деактивировала инструментальная панель

  • Файлы, которые имеют затенение файла или проблемы трассируемости пути

  • Артефакты, которые не находятся на пути и не рассматриваются во время трассировки