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объект указатель на блок, подсистему или график 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 (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 диалогового окна Configuration Parameters выберите Enable coverage analysis.

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

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

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

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