Получите совокупное покрытие для допускающих повторное использование подсистем и Stateflow® Constructs

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

Simulink® Coverage™ предоставляет совокупную страховую защиту нескольким экземплярам тождественно сконфигурированного:

  • Допускающие повторное использование подсистемы

  • Построения Stateflow™

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

Открытая модель в качестве примера

В командной строке MATLAB® введите:

addpath(fullfile(matlabroot,'toolbox','slcoverage','slcovdemos','internal'))
model = 'slvnvdemo_cv_mutual_exclusion';
open_system(model);

Эта модель имеет два экземпляра допускающей повторное использование подсистемы. Экземпляры называют Подсистемой 1 и Подсистемой 2.

Получите Decision Coverage для Подсистемы 1

Выполните команды для Подсистемы 1 Decision Coverage:

testobj1 = cvtest([model '/Subsystem 1']);
testobj1.settings.decision = 1;
covobj1 = cvsim(testobj1);

Получите Decision Coverage для Подсистемы 2

Выполните команды для Подсистемы 2 Decision Coverage:

testobj2 = cvtest([model '/Subsystem 2']);
testobj2.settings.decision = 1;
covobj2 = cvsim(testobj2);

Добавьте результаты покрытия для Подсистемы 1 и Подсистемы 2

Выполните команду, чтобы создать совокупный Decision Coverage для Подсистемы 1 и Подсистемы 2:

covobj3 = covobj1 + covobj2;

Сгенерируйте отчет покрытия для Подсистемы 1

Создайте отчет HTML для Подсистемы 1 Decision Coverage:

cvhtml('subsystem1',covobj1)

Отчет указывает, что Decision Coverage составляет 50% для Подсистемы 1. Условие true для enable logical value не анализируется.

Сгенерируйте отчет покрытия для Подсистемы 2

Создайте отчет HTML для Подсистемы 2 Decision Coverage:

cvhtml('subsystem2',covobj2)

Отчет указывает, что Decision Coverage составляет 50% для Подсистемы 2. Условие false для enable logical value не анализируется.

Сгенерируйте отчет покрытия для совокупного покрытия Подсистемы 1 и Подсистемы 2

Создайте отчет HTML для совокупного Decision Coverage для Подсистемы 1 и Подсистемы 2:

cvhtml('cum_subsystem',covobj3)

Совокупный Decision Coverage для допускающей повторное использование Подсистемы подсистем 1 и Подсистемы 2 составляет 100%. И true и условия false для enable logical value анализируются.