getCoverageInfo

Извлечение информации о покрытии для блоков Simulink Design Verifier из cvdata объект

Синтаксис

[coverage, description] = getCoverageInfo(cvdo, object)
[coverage, description] = getCoverageInfo(cvdo, object, metric)
[coverage, description] = getCoverageInfo(cvdo, object, metric, ignore_descendants)

Описание

[coverage, description] = getCoverageInfo(cvdo, object) собирает Simulink® Design Verifier™ покрытие для object, на основе результатов покрытия в cvdo. object является указателем на блок, подсистему или Stateflow® график. getCoverageData возвращает данные о покрытии только для библиотечных блоков Simulink Design Verifier в objectиерархия.

[coverage, description] = getCoverageInfo(cvdo, object, metric) возвращает данные о покрытии для типа блока, заданного в metric. Если object не соответствует типу блока, getCoverageInfo не возвращает данные.

[coverage, description] = getCoverageInfo(cvdo, object, metric, ignore_descendants) возвращает данные о покрытии object, опуская данные о покрытии для его дочерних объектов, если ignore_descendants равен 1.

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

cvdo

cvdata объект

object

В модели или диаграмме Stateflow объект, который получил покрытие Simulink Design Verifier. Ниже приведены допустимые значения для object.

BlockPath

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

BlockHandle

Указатель на модель или блок

slObj

Указатель на объект Simulink API

sfID

Идентификатор Stateflow из отдельной экземплярической диаграммы Stateflow

sfObj

Указатель на объект Stateflow API из отдельно созданной диаграммы Stateflow

{BlockPath, sfID}

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

{BlockPath, sfObj}

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

{BlockHandle, sfID}

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

metric

cvmetric.Sldv объект перечисления или массив ячеек объектов перечисления со значениями, соответствующими библиотечным блокам Simulink Design Verifier. Если вы не задаете метрику, getCoverageInfo возвращает информацию о покрытии для всех доступных метрик для заданного object.

test

Test Objective (Simulink Design Verifier) блок

proof

Proof Objective (Simulink Design Verifier) блок

condition

Test Condition (Simulink Design Verifier) блок

assumption

Proof Assumption (Simulink Design Verifier) блок

ignore_descendants

Логическое значение, которое задает игнорирование покрытия дочерних объектов, если установлено на 1.

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

coverage

Двухэлементный вектор вида [covered_outcomes total_outcomes].

covered_outcomesКоличество целей тестирования, удовлетворенных за object
total_outcomesОбщее количество целей тестирования для object

coverage пуст, если cvdo не содержит результатов Decision Coverage для object.

Примечание

Если object получает покрытие для нескольких метрик, затем выходной аргумент coverage является массивом ячеек с каждой камерой, соответствующей целевым результатам для метрики. Каждая камера содержит двухэлементный вектор вида [covered_outcomes total_outcomes].

description

Массив структур, содержащий описания каждой цели, и описания и количества выполнения для каждого результата в object.

Примечание

Если object получает покрытие для нескольких метрик, затем выходной аргумент description - массив ячеек с каждой камерой, соответствующей описаниям для метрики. Каждая камера содержит массив структур, содержащий описания каждой цели, и описания и счетчики выполнения для каждого результата в object.

Примеры

Получите покрытие для всех блоков Proof Objective в Verification Subsystem1

mdl = 'sldvdemo_powerwindow_vs';
open_system(mdl)
set_param(mdl, 'StopTime', '10')
testObj = cvtest(mdl);
testObj.settings.designverifier = 1;
data = cvsim(testObj);
verifSubsys = [mdl '/Verification Subsystem1'];
covProof = getCoverageInfo(data, verifSubsys, cvmetric.Sldv.proof)

covProof является двухэлементным вектором вида [covered_outcomestotal_outcomes] показаны 1 охватываемый результат из 1 общей цели доказательства результата.

Получите покрытие для определенного блока Test Objective в Verification Subsystem1

mdl = 'sldvdemo_powerwindow_vs';
open_system(mdl)
set_param(mdl, 'StopTime', '10')
testObj = cvtest(mdl);
testObj.settings.designverifier = 1;
data = cvsim(testObj);
verifSubsys = [mdl '/Verification Subsystem1'];
testObjBlock = [verifSubsys '/Test Objective2'];
covTest = getCoverageInfo(data, testObjBlock)

covTest является двухэлементным вектором вида [covered_outcomes total_outcomes] показаны 0 покрытых результатов из 1 общего результата цели тестирования.

Получите данные о покрытии и описания для всех доступных метрик, записанных в Verification Subsystem1

mdl = 'sldvdemo_powerwindow_vs';
open_system(mdl)
set_param(mdl, 'StopTime', '10')
testObj = cvtest(mdl);
testObj.settings.designverifier = 1;
data = cvsim(testObj);
verifSubsys = [mdl '/Verification Subsystem1'];
[covAll, descrAll] = getCoverageInfo(data, verifSubsys, ...
{cvmetric.Sldv.proof, cvmetric.Sldv.test})

covAll является массивом ячеек с камерами, соответствующими целевым результатам для каждой метрики. descrAll - массив ячеек с камерами, соответствующими описаниям каждой метрики.

covAll{1} 
covAll{2} 

covAll{1} является двухэлементным вектором формы [covered_outcomes total_outcomes], показывающим 1 охватываемые результаты из 1 общих доказательных объективных результатов. covAll{2} - двухэлементный вектор формы [covered_outcomes total_outcomes], показывающий 0 покрытых исходов из 1 общей цели тестирования исходов.

descrAll{1}
descrAll{2}

descrAll{1} - массив структур, содержащий описания каждой цели доказательства, а также описания и счетчики выполнения для каждого результата. descrAll{2} - массив структур, содержащий описания каждой цели тестирования, а также описания и счетчики выполнения для каждого результата.

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

Используйте настройки покрытия для сбора и отображения результатов покрытия для библиотечных блоков Simulink Design Verifier:

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

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

  3. На панели Coverage диалогового окна Параметры конфигурации выберите Enable coverage analysis.

  4. В разделе Coverage metrics выберите Objectives and constraints.

  5. Щелкните OK, чтобы закрыть диалоговое окно Параметры конфигурации (Configuration Parameters) и сохранить изменения.

  6. Моделируйте модель и просмотрите результаты.

Введенный в R2009b