Покрытие модели для различных блоков

Simulink® Coverage™ может анализировать и сообщить о данных о покрытии для моделей, содержащих различные блоки, такие как блоки Variant Subsystem или Variant Source. Когда вы симулируете модель, содержащую один или несколько различных блоков с включенным покрытием, Simulink Coverage сообщает о результатах покрытия в зависимости от типа различного блока и Различного параметра времени активации.

Для Variant Source и блоков Variant Sink, Simulink Coverage анализирует восходящие и нисходящие блоки вариантов, соответственно. Сам блок Variant Source и Variant Sink не получает покрытие. Для Variant Subsystem и блоков Variant Model, Simulink Coverage анализирует содержимое подсистемы или блоков модели для выбранных метрик.

Варианты разового обновлением и времени компиляции

Если вы устанавливаете параметр Variant activation time различного блока к update diagram, update diagram analyze all choices, или code compile, Simulink Coverage сообщает о покрытии только для варианта, который активен во время симуляции.

Совет

Вы не можете агрегировать покрытие для симуляций с различными активными вариантами для вариантов разового обновлением или времени компиляции. Если вы хотите протестировать все возможные варианты, рассмотрите установку Variant activation time к startup.

Например, предположите, что у вас есть модель, которая содержит блок Variant Subsystem с двумя вариантами. Параметр Variant activation time блока Variant Subsystem устанавливается на update diagram.

Simulink model containing a variant subsystem. A graphic shows that the variant subsystem expands into two variant choices.

Если Subsystem1 активно для симуляции, вы получаете результаты покрытия для Subsystem1 и не Subsystem2.

В результатах покрытия, Subsystem1 является красным, который указывает, что это получило неполное покрытие и Subsystem2 серо, который указывает, что это не анализировалось. Кроме того, сводные данные отчета покрытия не используют варианты, которые не были активны.

Coverage report summary showing Subsystem 1 has 50% decision and 100% block execution coverage. Subsystem 2 is omitted from the summary.

Когда вы устанавливаете параметр Variant activation time различного блока к update diagram, update diagram analyze all choices, или code compile, изменение активного варианта является структурным изменением к модели. Поскольку данные о покрытии для модели только допустимы, пока модель не изменяется или закрывается, вы не можете агрегировать покрытие для той же модели, симулированной с различными активными вариантами. Если вы хотите протестировать несколько активных вариантов и совокупного покрытия для них, изменить параметр Variant activation time в startup.

Запустите варианты

Если вы устанавливаете параметр Variant activation time различного блока к startup, Simulink Coverage сообщает о покрытии для всех вариантов, даже если они не активны во время симуляции. Можно также агрегировать покрытие для симуляций с различными активными вариантами.

Например, если вы изменяете модель в предыдущем примере и устанавливаете Variant activation time на startup и Subsystem1 активен для симуляции, вы получаете то же покрытие для Subsystem1 как случай с вариантом времени обновления. Однако Simulink Coverage также сообщает относительно неактивного варианта, Subsystem2.

В результатах покрытия, Subsystem1 и Subsystem2 являются оба красными, который указывает на неполное покрытие. Сводные данные отчета покрытия включают все варианты.

Coverage report summary showing the top model has 30% decision coverage, the variant subsystem has 25% decision coverage, the variant child Subsystem 1 has 50% decision coverage, and the variant child Subsystem 2 has 0% decision coverage.

Неактивные варианты получают 0%-е покрытие, потому что они не выполнялись во время симуляции. Увеличить покрытие, о котором сообщают, для Variant_Subsystem, можно симулировать модель снова с Subsystem2 как активный вариант и затем агрегировали результаты покрытия.

Aggregated Tests and Summary sections of the coverage report. Coverage results from two simulations aggregated together show the top model has 60% decision coverage, the variant subsystem has 50% decision coverage, the variant child Subsystem 1 has 50% decision coverage, and the variant child Subsystem 2 has 50% decision coverage.

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

Похожие темы

Смотрите также

| |