Анализ покрытия можно автоматизировать в сценарии с помощью функций и классов Simulink Coverage. Например, может потребоваться сбор данных покрытия путем моделирования одной и той же модели с различными параметрами модели. Вместо изменения параметров вручную можно выполнить моделирование и собрать данные покрытия в цикле.
В этом примере показано, как собирать данные покрытия с помощью sim.
Загрузить модель
Сначала загрузите модель и систему, которую требуется проанализировать, в память.
load_system('slvnvdemo_ratelim_harness');
Установка параметров покрытия
Настройка параметров покрытия с помощью одного из методов, описанных в разделе , например, входные данные моделирования, структура параметров или пары имя-значение. Например, чтобы использовать структуру параметров, настройте структуру, поля которой являются именами параметров конфигурации и значения которых являются соответствующими значениями этих параметров.sim
paramStruct.CovEnable = 'on'; paramStruct.CovMetricStructuralLevel = 'Decision'; paramStruct.CovSaveSingleToWorkspaceVar = 'on'; paramStruct.CovSaveName = 'covData'; paramStruct.CovScope = 'Subsystem'; paramStruct.CovPath = '/Adjustable Rate Limiter'; paramStruct.StartTime = '0.0'; paramStruct.StopTime = '2.0';
Для примера, в котором используется Simulink.SimulationInput см. раздел Запись покрытия при параллельном моделировании с использованием Parsim.
Настройка теста и моделирование модели
В примере модели используются входные значения, определенные в рабочей области MATLAB ®. Значения, используемые в этом примере, определяются в файле данных с именемwithin_lim.mat. Вы можете использовать load для загрузки файла в рабочую область.
load within_lim.mat;
Моделирование модели с помощью sim с paramStruct в качестве дополнительного ввода для сбора данных покрытия с использованием указанных параметров.
simOut = sim('slvnvdemo_ratelim_harness',paramStruct);
Полный список параметров конфигурации покрытия Simulink см. в разделе Настройки покрытия.
Создание отчета о покрытии
Можно создать HTML-отчет для просмотра данных покрытия, генерируемых с помощью моделирования. cvhtml. Первый ввод - это имя отчета о покрытии, который будет сохранен в текущем каталоге. Второй вход - cvdata объект, сохраненный в рабочей области на основе параметров модели CovSaveSingleToWorkspaceVar и CovSaveName.
Можно создать отчет, не открывая его автоматически с помощью флажка '-sRT=0' как третий вход в cvhtml.
cvhtml('covReport',covData,'-sRT=0');
Сохранить данные покрытия
Использовать cvsave для сохранения результатов покрытия. Первый вход является именем файла данных покрытия, а второй вход - cvdata объект.
cvsave('covdata',covData);
Закрыть модель
Выход из среды покрытия с помощью cvexit и закройте модель с помощью close_system. Второй вход 0 указывает на то, что перед закрытием не требуется сохранять модель.
cvexit
close_system('slvnvdemo_ratelim_harness',0);
sim и кнопку «Выполнить»При запуске моделирования с включенным покрытием с помощью кнопки Run (Выполнить) отчет о покрытии открывается автоматически, и по умолчанию включено выделение покрытия. При программном запуске моделирования с помощью simотчет о покрытии не открывается, и подсветка покрытия не включена.
Для просмотра результатов покрытия, отображаемых с помощью выделения модели, используйте cvmodelview.
Для просмотра отчета о покрытии используйте cvhtml.
Чтобы открыть обозреватель результатов, откройте модель в Simulink ®. На вкладке Приложения щелкните Анализатор покрытия. Затем щелкните Обозреватель результатов.
Для получения более подробной информации см. Учебное пособие по проверке командной строки.
При наличии лицензии Simulink Test™ для сбора данных покрытия можно воспользоваться диспетчером тестирования. Дополнительные сведения см. в разделе Запуск тестового случая и сбор покрытия (Simulink Test).
cvhtml | cvsim | cvtest | sim | Simulink.SimulationInput