exponenta event banner

sldv.condition

Функция тестирования условий для диаграмм потока состояний и функциональных блоков MATLAB

Описание

пример

sldv.condition(expr) указывает, что expr true для каждого временного шага в сгенерированном тестовом случае. Использовать любое допустимое логическое выражение для expr.

Эта функция не имеет выхода и не влияет на ее родительскую функцию, кроме каких-либо косвенных побочных эффектов оценки expr. При выполнении этой функции из командной строки MATLAB ® эта функция не действует.

Вкрапить sldv.condition проверка условий в коде MATLAB или разделение условий на сценарий проверки.

Опция Test conditions на панели Test generation применяется к тестовым условиям, представленным в sldv.condition и с блоком тестовых условий.

Примеры

свернуть все

Добавьте цель теста и условия теста с помощью функционального блока MATLAB.

Откройте окно sldvdemo_cruise_control модель и сохраните ее как ex_sldvdemo_cruise_control.

Удалите блок тестовых условий для speed блочный сигнал. Вместо блока тестовых условий в этом примере используется sldv.test и sldv.condition.

Из библиотеки пользовательских функций добавьте функциональный блок MATLAB:

  1. Назовите блок tests.

  2. Откройте блок и добавьте следующий код:

    function define_tests(speed, target)
    %#codegen
    
    sldv.condition(speed >= 0 && speed <= 100);
    sldv.test(speed > 60 && target > 40 && target < 50);
    sldv.test(speed < 20 && target > 50);
  3. На вкладке «Редактор» нажмите «Сохранить» и закройте редактор.

  4. Подключите блок к сигналам для speed блок и для target блок.

Сохранить изменения в ex_environment_controller модель.

Для создания тестовых примеров на вкладке Design Verifier щелкните Generate Tests (Генерировать тесты).

Входные аргументы

свернуть все

Например, выражение MATLAB x > 0.

Альтернативы

Вместо использования sldv.condition можно вставить блок тестовых условий в модель. Используя sldv.condition вместо блока тестовых условий предлагает несколько преимуществ, описанных в разделе Что такое создание тестовых примеров?.

Можно также определить условия тестирования с помощью MATLAB для генерации кода без использования sldv.condition функция. Используя sldv.condition вместо непосредственного использования MATLAB для генерации кода устраняет необходимость:

  • Выражайте зависимости с помощью блоков Simulink ®.

  • Явное подключение вывода условия к блоку Simulink.

Представлен в R2009b