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

ID Stateflow от отдельно инстанцированной диаграммы Stateflow

sfObj

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

{BlockPath, sfID}

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

{BlockPath, sfObj}

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

{BlockHandle, sfID}

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

metric

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

test

Блок Test Objective

proof

Блок Proof Objective

condition

Блок Test Condition

assumption

Блок Proof Assumption

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.

Примеры

Получите покрытие для всех блоков Цели доказательства в 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. В Редакторе моделей выберите Analysis> Coverage> Settings.

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

  4. Под Coverage metrics выберите Objectives and constraints.

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

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

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