Расширьте тесты для модифицированной модели

Предположим, что у вас есть модель, что вы уже анализировали использование Simulink® Design Verifier™, и вы изменяете модель. Исходный тестовый набор не может записать 100%-е покрытие для модифицированной модели. Повторно анализируйте модифицированную модель, чтобы убедиться, что она удовлетворяет всем новым целям тестирования. Вместо того, чтобы повторно анализировать целую модель, вы сфокусировали новый анализ на только модифицированной части модели. Таким образом вы усиливаете тесты, созданные для исходной модели, расширяя их, чтобы удовлетворить любым новым целям.

Этот пример использует sldvdemo_cruise_control модель. Вы анализируете модель и генерируете тесты. Затем вы анализируете модифицированную версию той модели, sldvdemo_cruise_control_mod, расширение тестов от исходного анализа. Анализ возвращает полный тестовый набор для новой модели.

Создайте стартовые тесты

Анализируйте sldvdemo_cruise_control модель и генерирует тесты, которые достигают 100%-го покрытия.

  1. Откройте модель в качестве примера:

  2. Запустить анализ Simulink Design Verifier для sldvdemo_cruise_control модель, дважды кликните блок Run Simulink Design Verifier.

    Анализ удовлетворяет 34 целям тестирования для sldvdemo_cruise_control модель. Программное обеспечение хранит получившийся файл данных в подпапке MATLAB® Current Folder:

    sldv_output\sldvdemo_cruise_control\sldvdemo_cruise_control_sldvdata.mat

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

  3. Закройте sldvdemo_cruise_control модель и все файлы создаются анализом. Если спросили, не сохраняйте изменения, которые вы внесли в модель.

Расширьте существующие тесты

sldvdemo_cruise_control_mod модель является модифицированной версией sldvdemo_cruise_control. Подсистема контроллера содержит блок Saturation, который указывает, что целевая скорость не может превысить 70.

Откройте модифицированную модель и анализируйте ее, расширяя тесты, которые вы сгенерировали при анализе sldvdemo_cruise_control модель:

  1. Откройте модель в качестве примера, модифицированную версию sldvdemo_cruise_control:

  2. Дважды кликните Подсистему контроллера, чтобы видеть изменение в исходной модели, блок Saturation, который задает максимальную скорость:

  3. Закройте Подсистему контроллера.

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

  5. В диалоговом окне Configuration Parameters, на панели Test Generation, под Existing test cases, выбирают Extend existing test cases.

  6. В поле Data file нажмите Browse и перейдите к MAT-файлу, созданному в Текущей папке MATLAB при анализе исходной модели:

    sldv_output\sldvdemo_cruise_control\sldvdemo_cruise_control_sldvdata.mat
  7. Очистите Ignore objectives satisfied by existing test cases.

    Когда вы очищаете эту опцию, анализ включает тесты, зарегистрированные в файл sldvdemo_cruise_control_sldvdata.mat в наборе завершающего испытания.

  8. Нажмите Apply, чтобы сохранить эти настройки.

  9. Чтобы запустить анализ, нажмите Generate Tests.

    Анализ сначала загружает эти 34 цели, которым удовлетворяют начальные тесты. Затем это добавляет, что дополнительное время продвигается в те тесты и пытается удовлетворить любым недостающим целям.

  10. В окне Results Summary нажмите Generate detailed analysis report.

    Анализ удовлетворил в общей сложности 38 целям, которым удовлетворяют, для sldvdemo_cruise_control_mod модель. Анализ удовлетворил четырем дополнительным целям, которые соответствуют блоку Saturation.

Похожие темы