executioninfo

Получите информацию о покрытии выполнения из cvdata объект

Синтаксис

coverage = executioninfo(cvdo, object)
coverage = executioninfo(cvdo, object, mode)
coverage = executioninfo(cvdo, object, ignore_descendants)
[coverage, description] = executioninfo(cvdo, object)

Описание

coverage = executioninfo(cvdo, object) возвращает результаты покрытия выполнения в cvdata объект cvdo для компонента модели, заданного object.

coverage = executioninfo(cvdo, object, mode) возвращает результаты покрытия выполнения в cvdata объект cvdo для компонента модели, заданного object для режима mode симуляции.

coverage = executioninfo(cvdo, object, ignore_descendants) возвращает результаты покрытия выполнения для object, В зависимости от значения ignore_descendants.

[coverage, description] = executioninfo(cvdo, object) возвращает результаты покрытия выполнения и текстовые описания точек выполнения, сопоставленных с object.

Входные параметры

cvdo

cvdata объект

object

object аргумент задает объект в модели или графике Stateflow®, который получил покрытие выполнения. Допустимые значения для object включайте следующее:

Объектная спецификацияОписание

BlockPath

Полный путь к модели или блоку

BlockHandle

Обработайте к модели или блоку

slObj

Обработайте к объекту Simulink® API

sfID

ID Stateflow

sfObj

Обработайте к объекту Stateflow API от отдельно инстанцированной диаграммы Stateflow

{BlockPath, sfID}

Массив ячеек с путем к диаграмме Stateflow или атомарному подграфику и ID объекта, содержавшегося в том графике или подграфике

{BlockPath, sfObj}

Массив ячеек с путем к диаграмме Stateflow или подграфику и указателю API объекта Stateflow, содержавшемуся в том графике или подграфике

{BlockHandle, sfID}

Массив ячеек с указателем на диаграмму Stateflow или атомарный подграфик и ID объекта, содержавшегося в том графике или подграфике

При определении Блока s-function, допустимых значений для object включайте следующее:

Объектная спецификацияОписание

{BlockPath, fName}

Массив ячеек с путем к блоку S-Function и имени исходного файла.

{BlockHandle, fName}

Массив ячеек с указателем блока S-Function и именем исходного файла.

{BlockPath, fName, funName}

Массив ячеек с путем к блоку S-Function, имени исходного файла и имени функции.

{BlockHandle, fName, funName}

Массив ячеек с указателем блока S-Function, именем исходного файла имя функции.

Для данных о покрытии, собранных во время программного обеспечения в режиме Loop (SIL) или Процессора в цикле (PIL) режим симуляции, допустимые значения для object включайте следующее:

Объектная спецификацияОписание

{fileName, funName}

Массив ячеек с именем исходного файла и имени функции.

{Model, fileName}

Массив ячеек с именем модели (или указатель модели) и имя исходного файла.

{Model, fileName, funName}

Массив ячеек с именем модели (или указатель модели), имя исходного файла и имя функции.

mode

mode аргумент задает режим симуляции для покрытия. Допустимые значения для mode включайте следующее:

Объектная спецификацияОписание

'Normal'

Модель в Нормальном режиме симуляции.

'SIL' (or 'PIL')

Модель в программном обеспечении в цикле (SIL) или Процессоре в цикле (PIL) режим симуляции.

'ModelRefSIL' (or 'ModelRefPIL')

Модель - ссылка в программном обеспечении в цикле (SIL) или Процессоре в цикле (PIL) режим симуляции.

'ModelRefTopSIL' (or 'ModelRefTopPIL')

Модель - ссылка в программном обеспечении в цикле (SIL или Процессор в цикле (PIL) режим симуляции с кодом соединяют интерфейсом с набором топ-модели.

ignore_descendants

Задает, чтобы проигнорировать покрытие объектов-потомков если ignore_descendants установлен в 1.

Выходные аргументы

coverage

Значение coverage двухэлементный вектор формы [covered_outcomes total_outcomes].coverage пусто если cvdo не содержит результаты покрытия выполнения для object. Эти два элемента:

covered_outcomesКоличеству результатов выполнения удовлетворяют для object
total_outcomesКоличество результатов выполнения для object

description

description массив структур, содержащий следующие поля:

decision.textОписание массива структур блокирует количества выполнения
isFilteredОтфильтрован ли блок
filterRationaleОбъяснение фильтрации
justifiedCoverageВыровненные по ширине условия решения
isJustifiedВыравнивается ли по ширине блок

Примеры

Откройте slvnvdemo_cv_small_controller модель и создает тестовый объект testObj спецификации. Включите покрытие выполнения для slvnvdemo_cv_small_controller и выполните testObj использование cvsim. Используйте executioninfo получить результаты покрытия выполнения для блока Saturation и определить процент охваченных результатов выполнения:

mdl = 'slvnvdemo_cv_small_controller';
open_system(mdl)
testObj = cvtest(mdl)
data = cvsim(testObj)
blk_handle = get_param([mdl, '/Saturation'], 'Handle');
cov = executioninfo(data, blk_handle)
percent_cov = 100 * cov(1) / cov(2)

Альтернативы

Используйте настройки покрытия, чтобы собрать и отобразить результаты покрытия выполнения:

  1. Откройте модель.

  2. В Редакторе моделей выберите Model Settings на вкладке Modeling.

  3. На панели Coverage диалогового окна Configuration Parameters выберите Enable coverage analysis.

  4. Под Coverage metrics выберите Block Execution как уровень структурного покрытия.

  5. На Coverage> панель Results, задайте выход, в котором вы нуждаетесь.

  6. Нажмите OK, чтобы закрыть диалоговое окно Configuration Parameters и сохранить ваши изменения.

  7. Симулируйте модель и рассмотрите результаты.

Представленный в R2006b