slcoverage.Filter class

Пакет: slcoverage

Фильтр покрытия устанавливается

Описание

Создайте объект фильтра покрытия, чтобы добавить правила фильтра в.

Конструкция

filt = slcoverage.Filter() создает slcoverage.Filter объект.

filt = slcoverage.Filter(filterFile) добавляют правила фильтра в filterFile к фильтру.

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

развернуть все

Отфильтруйте файл (.cvf файл), заданный как вектор символов пути к файлу. Вы не должны включать расширение.

Пример: 'myfilt', 'filters/myfilt'

Методы

addRuleДобавьте правило фильтрации покрытия отфильтровать
removeRuleУдалите правило из набора правила фильтра
правилаПравила для фильтра

Копировать семантику

Указатель. Чтобы изучить, как классы Handle влияют на операции копии, смотрите Копирование Объектов (MATLAB).

Примеры

свернуть все

Создайте объект фильтра и добавьте правило в него. В этом примере вы добавляете правило исключить некоторые блоки из тестирования покрытия.

Откройте модель. Задайте настройки покрытия и включите запись покрытия.

modelName = 'sldemo_lct_bus';
open_system(modelName);
set_param(modelName,'CovMetricSettings','dcme','RecordCoverage','on');

Выберите блоки с типом блока 'RelationalOperator' чтобы добавить фильтр управляют для.

bl = slcoverage.BlockSelector(slcoverage.BlockSelectorType.BlockType,'RelationalOperator');

Создайте объект фильтра, создайте правило и добавьте правило в фильтр.

filt = slcoverage.Filter;
rule = slcoverage.FilterRule(bl,'Tested elsewhere',slcoverage.FilterMode.Exclude);
filt.addRule(rule);

После того, как вы создаете фильтр и добавляете одно или несколько правил в него, сохраняете фильтр в файл. Симулируйте модель для покрытия кода. Добавьте файл фильтра как значение к filter свойство получившегося cvdata объект.

filt.save('blfilter');
csim = cvsim(modelName);
csim.filter = 'blfilter';
cvhtml('cov',csim);

Исследуйте отчет HTML и заметьте правила, которые были добавлены для блоков. Отчет покрытия показывает исключенные блоки и объяснение.

Этот пример принимает, что у вас есть существующий файл фильтра myfilt.cvf то, что вы хотите добавить правило в. Создайте объект фильтра, который использует тот файл. Добавьте правило в объект фильтра и затем сохраните файл снова.

filt = slcoverage.Filter('myfilt');
bl = slcoverage.BlockSelector(slcoverage.BlockSelectorType.BlockInstance,'sldemo_lct_bus:23');

rule = slcoverage.FilterRule(bl,'Edge case');
filt.addRule(rule);
filt.save('myfilt')

Введенный в R2017b

Для просмотра документации необходимо авторизоваться на сайте