Используйте Ссылочный Блок Наблюдателя для Генерации Теста

В этом примере показов, как сгенерировать тесты для двух пользовательских блоков Цели тестирования с помощью блока Observer Ссылки и использовать представление модели для повторного анализа модели проекта. Для получения дополнительной информации см. «Изоляция логики верификации с наблюдателями». Чтобы переанализовать модель, вы обновляете логику верификации и устанавливаете опцию Rebuild model representation на If change is detected. Для получения дополнительной информации см. «Представление модели для анализа».

Шаг 1: Откройте модель и замените Подсистему верификации

В блоке Цель Тестирования блок «True» заставляет выходной сигнал равняться 2. Блок «Edge» внутри «Masked Objective» задает, что выходной сигнал переходит с 2 на 1. Чтобы открыть модель, введите:

open_system('sldvdemo_debounce_testobjblks');

Чтобы заменить маскированную цель Подсистемы верификации в модели блоком Observer Reference, выполните следующие шаги:

(a) Щелкните правой кнопкой мыши по маскированной цели в sldvdemo_debounce_testobjblks модель. В контекстном меню выберите Наблюдатели > Переместить выбранный блок в Наблюдатель > Создать Наблюдатель.

(b) Нажмите Да в диалоговом окне «Verify Output» to Observer, которое появляется после шага (a).

(c) Блок Ссылка добавляется к вашей системной модели, и модель Observer sldvdemo_debounce_testobjblks_Observer1 создается и открывается.

(d) Сохраните файл sldvdemo_debounce_validprop_Observer1 в папке с возможностью записи в пути MATLAB.

(e) Дважды кликните порт Observer, чтобы открыть окно Manage Observer. Сигнал Switch 1 автоматически сопоставляется с блоком Observer Port в sldvdemo_debounce_testobjblks_Observer1.

(f) Выберите входной сигнал к Подсистеме маскированных целей в sldvdemo_debounce_testobjblks и нажмите на Тестовая Точка в панели Signal, чтобы убедиться, что Simulink Design Verifier успешно создает представление модели для анализа.

Шаг 2: Выполните анализ генерации тестов

Чтобы выполнить анализ генерации тестов, выполните следующие шаги:

На вкладке Design Verifier нажмите Generate Test.

После завершения анализа в окне Сводных данных результатов отображается, что обе цели удовлетворены тестом.

Чтобы просмотреть детальный анализ отчет, в окне Сводных данных результатов щелкните HTML. В этом докладе в главе Целей тестирования Status указывается статус целей для Модели проекта (ов) Моделями (Моделями ) (ых) наблюдателей в отдельных подразделах.

Шаг 3: Измените модель Observer и повторите анализ, не перестраивая представление модели проекта

Чтобы сгенерировать тест для функциональной потребности, debounced сигнал переходит от 1 до 2, не перестраивая представление модели для модели проекта. Чтобы включить повторное использование представления модели проекта, выполните следующие шаги:

(а) На вкладке Design Verifier нажмите Test Generation Settings > Settings.

(b) В диалоговом окне «Параметры строений» на панели Design Verifier в продвинутых параметрах установите для опции Rebuild model representation значение If change is detected и нажмите OK.

(c) Чтобы обновить параметры модели, выполните следующие шаги:

1. В sldvdemo_debounce_testobjblks_Observer1 дважды кликните, чтобы открыть Подсистему маскированных целей и изменить значение константы In1 от 1 до 2 и реляционный оператор от > на <.

2. Сохраните изменения в пути MATLAB с возможностью записи.

(d) Выполните анализ генерации тестовых примеров и анализ результатов. На вкладке Design Verifier нажмите Generate Tests. Программа проверяет кэшированное представление модели проекта, не обнаруживает изменений в модели проекта и повторно использует представление для анализа.

После завершения анализа в окне Сводных данных результатов отображается, что удовлетворена только одна цель тестирования.

Чтобы просмотреть детальный анализ отчет, в окне Сводных данных результатов щелкните HTML.

Примечание. Если вы создаете новую модель, по умолчанию опция Перестроить представление модели задается равной If change is detected. Программа проверяет представление модели кэша, не обнаруживает изменений и повторно использует представление модели для анализа.

Похожие темы