В этом примере описывается, как создать и проанализировать простую модель Simulink ®, для которой создаются тестовые примеры, обеспечивающие покрытие принятия решений. Однако в этом примере полное принятие решения возможно только тогда, когда Simulink Design Verifier™ рассматривает конкретный параметр блока как переменную во время анализа. В этом примере объясняется, как задать конфигурации параметров для использования с анализом.
Следующий рабочий процесс поможет выполнить этот пример.
| Задача | Описание | Видишь... |
|---|---|---|
| 1 | Создайте пример модели. | |
| 2 | Укажите переменную в качестве значения параметра блока «Константа». | |
| 3 | Ограничение значения переменной, заданного блоком «Константа». | |
| 4 | Создайте тестовые примеры для модели и интерпретируйте результаты. | |
| 5 | Смоделировать тестовые случаи и измерить результирующее покрытие принятия решения. |
Создайте простую модель Simulink для использования в следующем примере.
Создайте пустую модель Simulink.
Скопируйте следующие блоки в пустой редактор Simulink Editor:
Из библиотеки «Источники»:
Из библиотеки маршрутизации сигналов: блок мультипортового коммутатора для обеспечения простой логики
Из библиотеки Sinks: блок Outport для приема выходного сигнала
Дважды щелкните блок Multiport Switch, чтобы открыть его диалоговое окно и указать его параметр Number of data ports как 2.
Подключите блоки таким образом, чтобы модель выглядела следующим образом.

На вкладке Моделирование (Simulation) щелкните стрелку справа от раздела Подготовка (Prepare) и выберите Параметры модели (Model Settings).
В диалоговом окне «Параметры конфигурации» выберите решатель. В разделе Выбор решателя (Solver selection) задайте для опции Тип (Type) значение Fixed-step, а затем установите для параметра Решатель значение discrete (no continuous states).
На панели Диагностика (Diagnostics) задайте для параметра Автоматический выбор решателя (Automatic solver parameter none.
Нажмите кнопку ОК, чтобы применить изменения и закрыть диалоговое окно Параметры конфигурации (Configuration Parameters).
Сохранение модели как ex_defining_params_example для использования в следующей процедуре.
Параметризуйте блок Константа (Constant) в модели, указав переменную в качестве значения параметра Константа (Constant) блока Константа (Constant):
Дважды щелкните на блоке «Константа».
В поле «Постоянное значение» введите A.
Нажмите кнопку «ОК», чтобы применить изменение и закрыть диалоговое окно «Параметр блока константы».
Сохраните модель.
Предварительная загрузка значения переменной рабочей области MATLAB ®A на который ссылается блок «Константа»:
На вкладке Моделирование (Modeling) выберите Параметры модели (Model Settings) > Свойства модели (Model Properties).
Перейдите на вкладку Обратные вызовы.
В PreLoadFcn, введите:
A = int8(1);
Нажмите кнопку ОК, чтобы закрыть диалоговое окно Свойства модели (Model Properties) и сохранить изменения.
Закройте модель.
Откройте модель.
При открытии модели PreLoadFcn определяет переменную A типа int8 значение которого равно 1.

Использование таблицы параметров для ограничения переменной A к указанным значениям.
На вкладке Приложения щелкните стрелку справа от раздела Приложения.
В разделе Проверка модели (Model Verification), Проверка (Validation) и Тест (Test) щелкните Проверка конструкции (Design Verifier).
На вкладке «Design Verifier» в разделе «Prepare» в раскрывающемся меню параметров режима выберите «Settings».
В диалоговом окне «Параметры конфигурации» выберите «Design Verifier» > «Parameters».
Выберите Включить настройку параметров.
Выберите Использовать таблицу параметров.
Щелкните Найти в модели (Find in Model).
Таблица параметров заполняется параметрами из модели. По возможности он автоматически генерирует значения ограничений для каждого параметра в зависимости от типа данных и расположения параметра в модели.
В этом случае появляется строка для параметра A которое вы определили. Строка таблицы для A отображает следующую информацию:
В столбце «Имя» имя параметра (A).
В столбце «Ограничение» ограничение, указанное для параметра A. Таблица параметров автоматически генерирует значения ограничений. {1, 2}.
В столбце «Значение» значение A в базовом рабочем пространстве. Это значение равно 1.
В столбце «Элемент модели» компонент модели, в котором A проживает (ex_defining_params_example/Constant).
В столбце Использовать (Use) установлен флажок, указывающий, настроены ли указанные в таблице значения ограничений для анализа.

В таблице параметров в строке параметра Aубедитесь, что установлен флажок Использовать.
Если эта конфигурация параметров включена, во время анализа Simulink Design Verifier параметр A принимает только int8 значения 1 и 2.
В диалоговом окне «Параметры конфигурации» нажмите кнопку «ОК».
Сохраните модель.
Проанализируйте модель, используя только что созданную конфигурацию параметров, и создайте отчет об анализе:
На вкладке Design Verifier в разделе Mode выберите Test Generation. Щелкните Создать тесты (Generate Tests).
Simulink Design Verifier анализирует модель для создания тестовых примеров.
Когда программное обеспечение заканчивает свой анализ в окне Резюме Результатов Свидетельства Дизайна Simulink, избранный Производят отчет о подробном анализе.
Программа отображает HTML-отчет с именем ex_defining_params_example_report.html.
Оставьте окно Сводка результатов (Results Summary) открытым для следующей процедуры.
В оглавлении отчета Simulink Design Verifier щелкните Test Cases.
Щелкнуть Test Case 1 для отображения подраздела для этого тестового случая.

В этом разделе содержится подробная информация о тестовом примере 1, созданном Simulink Design Verifier для удовлетворения цели покрытия в модели. В этом тестовом случае значение 1 для параметра A удовлетворяет поставленной цели.
Выполните прокрутку вниз до раздела «Test Case 2» в главе «Test Cases».

В этом разделе содержится подробная информация о тестовом случае 2, который удовлетворяет другой цели покрытия в модели. В этом тестовом случае значение 2 для параметра A удовлетворяет поставленной цели.
Смоделировать созданные тестовые примеры и просмотреть отчет о покрытии, полученный в результате моделирования:
В окне Сводка результатов Simulink Design Verifier выберите Создать модель кабельных трасс.
Программа создает и открывает модель кабельных трасс с именем ex_defining_params_example_harness.
Блок «Входы» в модели кабельных трасс представляет собой блок построителя сигналов, содержащий сигналы тестовых примеров. Дважды щелкните блок «Inputs» (Входы), чтобы просмотреть сигналы тестового случая в блоке «Signal Builder» (Построитель сигналов).

В диалоговом окне Signal Builder нажмите кнопку Run all.![]()
Программное обеспечение Simulink последовательно моделирует каждый тестовый случай, собирает данные покрытия для каждого моделирования и отображает HTML-отчет о результатах комбинированного покрытия в конце последнего моделирования.
В отчете о покрытии модели просмотрите раздел Сводка:

В этом разделе обобщаются результаты покрытия для модели кабельных трасс и ее подсистемы «Тестовый блок». Обратите внимание на то, что подсистема обеспечивает 100% -ный охват принятия решений.
В разделе Summary выберите подсистему Test Unit.
В отчете отображаются подробные результаты покрытия для подсистемы блока тестирования.

В этом разделе показано, что блок многопортового коммутатора достигает 100% покрытия принятия решений, поскольку в тестовых случаях выполняется каждый из путей переключения.
Расширение существующих тестовых примеров после применения конфигураций параметров