Test Condition

Ограничивайте значения сигналов в тестах

  • Библиотека:
  • Верификатор проекта Simulink/Цели и ограничения

  • Test Condition block

Описание

Блок Test Condition задает условия тестирования для сигналов в моделях, которые работают в режиме генерации тестов. (См. «Что такое генерация теста?»). Используйте параметр Values, чтобы задать ограничения на значения сигналов. Блок применяет указанный параметр Values к своему входному сигналу и пытается создать тесты.

Можно использовать блок для:

  • Включите или отключите условие.

  • Укажите, должен ли блок отображать свой параметр Values в Simulink® Редактор.

  • Укажите, должен ли блок отображать свой выходной порт.

Когда вы генерируете код с помощью Coder™ Simulink и Simulink, блок Test Condition игнорируется. Блок Test Condition не изменяет сигнал во время симуляции модели и использует сигнал только для генерации условий тестирования.

Порты

Вход

расширить все

Блок Test Condition принимает сигналы всех встроенных типов данных, поддерживаемых программным обеспечением Simulink. Дополнительные сведения о поддерживаемых типах данных см. в разделе Типы данных, поддерживаемые Simulink. Блок не поддерживает сложные входные сигналы.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated | bus

Выход

расширить все

Блок Test Condition возвращает сигналы всех встроенных типов данных, поддерживаемых программным обеспечением Simulink. Дополнительные сведения о поддерживаемых типах данных см. в разделе Типы данных, поддерживаемые Simulink.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated | bus

Зависимости

Чтобы включить этот порт, выберите Pass through style (show Outport).

Параметры

расширить все

Выберите этот параметр, чтобы сгенерировать тесты для модели. Удаление этой опции отключает блок. Если эта опция не отменена, блок появляется в редакторе Simulink с потемнением.

Задайте, ведет ли блок себя как блок Test Condition или Proof Assumption. Выберите Assumption для преобразования блока Test Condition в блок Proof Assumption.

Используйте параметр Values, чтобы ограничить значения сигналов в тестах. Задайте любую комбинацию скаляров и интервалов в форме MATLAB® массив ячеек. Для получения дополнительной информации смотрите Задать значения ограничений для параметров в файлах кода MATLAB.

Также можно задать скалярные значения с помощью Sldv.Point конструктор, который принимает одно значение в качестве своего аргумента. Можно также задать интервалы с помощью Sldv.Interval конструктор, который требует двух входных параметров, один для нижней границы и один для верхней границы для интервала.

Для примера параметр Values

{0, [1, 3]}

задает:

  • 0 - Скаляр

  • [1, 3] - Закрытый интервал

Параметр Values

{Sldv.Interval(0, 1, '[)'), Sldv.Point(1)}

задает:

  • Sldv.Interval(0, 1, '[)') - Интервал открытия справа [0, 1)

  • Sldv.Point(1) - Скаляр

Если вы задаете несколько скаляров и интервалов для блока Test Condition, программное обеспечение Simulink Design Verifier™ объединяет их с помощью логической операции OR при генерации тестов. Следовательно, программное обеспечение рассматривает полное условие тестирования как удовлетворенное, если удовлетворен какой-либо один скаляр или интервал.

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

Для примера рассмотрим двумерный открытый интервал:

Sldv.Interval([-5 -5],[5 2],'()')

Вектор с нулем [0 0] удовлетворяет условию, потому что нулевые элементы находятся внутри интервалов -5 на 5 и -5 на 2.

Векторная [0 3] не удовлетворяет условию, потому что второй элемент 3 выходит за пределы интервала -5 на 2.

Укажите, отображает ли блок содержимое своего параметра Values в редакторе Simulink.

Если выбран, блок отображает свой выходной порт, который позволяет входному сигналу проходить к выходному блоку. Если не выбран, блок скрывает свой выходной порт и завершает входной сигнал.

Пример: Следующая графика иллюстрирует внешний вид блока в каждом случае.

Pass through style: Selected

Pass through style: Cleared

Введенный в R2007a