cvtest

Создайте объект спецификации тестирования покрытия модели

Описание

Использование cvtest чтобы создать объект тестовой спецификации, который хранит настройки покрытия модели. Передайте cvtest объект для cvsim функция для выполнения анализа покрытия на основе ваших настроек.

Создание

Описание

пример

cvto = cvtest(root) создает cvtest объект с настройками покрытия по умолчанию. root может быть именем модели или указателем на модель. root может также быть именем или указателем на подсистему в модели, в этом случае только указанная подсистема и ее потомки анализируются на предмет покрытия.

cvto = cvtest(root,label) создает cvtest объект с назначенной меткой.

cvto = cvtest(root,label,setupCmd) создает cvtest объект с командой setup setupCmd. Команда setup выполняется в базовом MATLAB® рабочая область перед выполнением анализа покрытия.

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

расширить все

Имя модели или указатель, или путь к подсистеме, заданный как символьный массив или строковые массивы.

Свойства

расширить все

Это свойство доступно только для чтения.

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

Это свойство доступно только для чтения.

Внутренний идентификатор строения покрытия, возвращенный как скаляр.

Это свойство доступно только для чтения.

Имя системы, которую вы задали для анализа, возвращаемое как символьный массив или строковые массивы.

Типы данных: char | string

Тестовая метка, заданная как символьный массив или строковые массивы. Эта метка появляется в отчете о покрытии как имя теста.

Типы данных: char | string

Команда выполняется в базовом рабочем пространстве MATLAB перед симуляцией, заданная как символьный массив или строковые массивы.

Команда setup выполняется перед каждой симуляцией.

Типы данных: char | string

Типы покрытия для сбора, заданные как структура.

settings включает следующие поля:

Свойство

Описание

Значения

settings.decision

Включите данный Decision Coverage.

1 (по умолчанию) | 0

settings.condition

Включите данные покрытия условия.

1 | 0 (по умолчанию)

settings.mcdc

Включите данный Decision Coverage измененных условий (MCDC).

Если settings.mcdc включено, можно также выбрать, какое определение MCDC использовать со options.mcdcmode свойство.

1 | 0 (по умолчанию)

settings.designverifier

Включите данные покрытия от Simulink® Проектируйте Verifier™ блоки.

1 | 0 (по умолчанию)

settings.tableExec

Включите данные о покрытии для интерполяционных таблиц.

1 | 0 (по умолчанию)

settings.sigrange

Включите данные диапазона сигнала.

1 | 0 (по умолчанию)

settings.sigsize

Включите данные о размере сигнала.

1 | 0 (по умолчанию)

settings.overflowsaturation

Включите насыщение по целочисленному переполнению данным покрытия.

1 | 0 (по умолчанию)

settings.relationalop

Включите реляционные данные покрытия границы.

Использование options.covBoundaryRelTol и options.covBoundaryAbsTol для определения допусков для этого типа покрытия.

Для получения дополнительной информации см. «Реляционное граничное покрытие»

1 | 0 (по умолчанию)

Расширенные опции покрытия, заданные как структура.

options включает следующие поля:

Свойство

Описание

Значения

options.covBoundaryRelTol

Относительная погрешность для реляционного покрытия границы.

Для получения дополнительной информации см. Раздел «Реляционное граничное покрытие».

0.01 (по умолчанию) | scalar

options.CovBoundaryAbsTol

Абсолютная погрешность для реляционного покрытия границы.

Для получения дополнительной информации см. Раздел «Реляционное граничное покрытие».

1e-5 (по умолчанию) | scalar

options.useTimeInterval

Будет ли ограничивать запись покрытия модели заданным временным интервалом симуляции.

Использование options.intervalStartTime и options.intervalStopTime для определения временного интервала.

Для получения дополнительной информации смотрите Задать опции покрытия

1 | 0 (по умолчанию)

options.intervalStartTime

Когда начать запись покрытия.

Задайте это свойство, если options.useTimeInterval включен.

0 (по умолчанию) | scalar

options.intervalStopTime

Когда прекратить запись покрытия.

Задайте это свойство, если options.useTimeInterval включен.

0 (по умолчанию) | scalar

options.forceBlockReduction

Запись покрытия для блоков, отмеченных параметром Block Reduction.

  • 1 (по умолчанию) - переопределите параметр Block Reduction Simulink, если он включен. Покрытие записывается для каждого поддерживаемого блока в модели. Значение параметра конфигурации <reservedrangesplaceholder0> игнорируется.

  • 0 - Используйте значение для Block Reduction параметра конфигурации. Если Block Reduction включено, покрытие не записывается для блоков, которые эффективно удаляются из модели из-за сокращения блоков. Например, покрытие не записывается для блока, который уменьшается устранением мертвого кода.

Для получения дополнительной информации смотрите Сокращение блоков

1 (по умолчанию) | 0

options.mcdcMode

Какое определение MCDC применить к модели, заданное как одна из следующих опций:

  • 'masking' - Используйте masking определение охвата MCDC.

  • 'unique cause' - Используйте unique cause определение охвата MCDC.

Для получения дополнительной информации смотрите Определения измененного условия и Decision Coverage (MCDC) в Simulink Coverage.

'masking' (по умолчанию) | 'unique cause'

Фильтр покрытия, заданный как структура.

filter имеет одно поле, filter.fileName. filter.fileName - имя файла фильтра покрытия для применения к анализу покрытия, заданное как символьный массив или строковые массивы.

Для получения дополнительной информации смотрите Правила Фильтрации Покрытия и Файлы

Моделируйте настройки привязки, заданные как структура.

modelRefSettings включает следующие поля:

Свойство

Описание

Значения

modelRefSettings.enable

Моделируйте настройку покрытия ссылки, заданную как один из следующих опций:

  • 'off' - Отключить покрытие для всех моделей-ссылок.

  • 'all' или 'on' - Включить покрытие для всех поддерживаемых моделей.

  • 'filtered' - Включите покрытие для всех поддерживаемых моделей-ссылок, кроме тех, которые перечислены в excludedModels поле.

'off' (по умолчанию) | 'on' | 'all' | 'filtered'

modelRefSettings.excludeTopModel

Следует ли исключить верхнюю модель из анализа покрытия, заданного в виде числа или логического 1 (true) или 0 (false).

1 (по умолчанию) | 0

modelRefSettings.excludedModels

Модели, на которые ссылаются, чтобы исключить из анализа покрытия, заданные как один символ или строковые массивы имен модели, разделенных запятыми.

Чтобы использовать это поле, установите modelRefSettings.enable на 'filtered'.

char | string

Собирать ли покрытие для внешних файлов программы, вызываемых функциями MATLAB в вашей модели, заданной как структура.

emlSettings имеет одно поле, emlSettings.enableExternal. emlSettings.enableExternal собирать ли внешние программные файлы, вызываемые функциями MATLAB, заданные в виде числа или логики 1 (true)(default) или 0 (false).

Собирать ли покрытие для блоков C/C + + S-Function в вашей модели, заданной как структура.

sfcnSettings имеет одно поле, sfcnSettings.enableSfcn. sfcnSettings.enableSfcn является ли сбор покрытия S-Function, заданный как логический 1 (true)(default) или 0 (false).

Для получения дополнительной информации см. раздел S-Function.

Примеры

свернуть все

В этом примере вы создаете cvtest объект для блока Adjustable Rate Limiter в slvnvdemo_ratelim_harness модель. Симулируйте модель, чтобы получить Decision Coverage и насыщение на целочисленное переполнение данных покрытия.

Откройте slvnvdemo_ratelim_harness моделируйте и определяйте тестовый объект используя cvtest.

open_system('slvnvdemo_ratelim_harness');
testObj = cvtest(['slvnvdemo_ratelim_harness', ...
		  '/Adjustable Rate Limiter']);
testObj.label = 'Gain within slew limits';

Добавьте команду setup к testObj. Команда setup выполняется в базовом рабочем пространстве MATLAB перед выполнением анализа покрытия. В этом случае команда setup загружает данные в рабочую область, необходимую для симуляции.

testObj.setupCmd = ...
	'load slvnvdemo_ratelim_harness_data.mat';

Чтобы собрать Decision Coverage и насыщение при целочисленном переполнении, включите decision и overflowsaturation поля в settings структуру путем установки полей в 1.

testObj.settings.decision = 1;
testObj.settings.overflowsaturation = 1;

Наконец, симулируйте модель с анализом покрытия путем предоставления cvtest объект для cvsim функция.

cvdo = cvsim(testObj);
Представлено до R2006a