Оцените симуляцию модели с помощью verify Операторы

Можно проверить симуляцию модели, включив блок Test Assessment в модель или тестовую обвязку и авторские verify операторы в блоке Test Assessment. verify операторы возвращают pass, fail, или untested результаты как для общей симуляции, так и для отдельных временных шагов. Результаты отображаются в Диспетчере тестов.

Активируйте verify Операторы в блоке Test Assessment

Этот Test Assessment содержит When последовательность разложения. The When последовательность разложения помогает вам четко определить условие симуляции, которое активирует каждый verify оператор:

  1. Если ваша модель использует источник Test Sequence блоков, рассмотрите активацию каждого verify оператор с использованием активного шага блока Test Sequence.

  2. Если ваша модель не использует источник Test Sequence блоков или шаги тестовой последовательности не соответствуют условиям для проверки, активируйте каждый verify оператор с использованием условия сигнала.

Активируйте verify Операторы с шагами тестовой последовательности

Соедините Test Sequence и Test Assessment блок с активным шаговым сигналом от блока Test Sequence. Активируйте каждую verify оператор с активным шагом.

Для примера эта тестовая обвязка содержит Test Sequence и Test Assessment блок. Блоки соединяются Active_Step сигнал.

Блок Test Assessment содержит when последовательность разложения с четырьмя подэтапами. Каждый содержит verify оператор и активируется другим шагом Test Sequence блока. The Else шаг не имеет никаких действий и обрабатывает условия симуляции за пределами предыдущего when условия. Принятый синтаксис такого шага Else.

Чтобы активировать операторы проверки в Test Assessment с активными шагами в блоках Test Sequence:

  1. Создайте выход данных активного шага для блока Test Sequence:

    1. Выберите Test Sequence блок.

    2. Создайте новый выход перечисленных данных. В Property Inspector выберите Create data to monitor the active step.

    3. Назовите перечисление.

  2. Создайте вход данных для блока Test Assessment:

    1. Откройте Test Assessment блок.

    2. На боковой панели Symbols рядом с Input щелкните значок Add data.

    3. Назовите вход.

  3. На блок-схеме соедините выход блока Test Sequence с входом блока Test Assessment.

  4. Создайте When последовательность разложения в блоке Test Assessment.

    1. Блок Test Assessment по умолчанию сконфигурирован со When последовательность разложения. Изменение между стандартной последовательностью и When последовательность разложения, щелкните правой кнопкой мыши родительский шаг и выберите When decomposition.

    2. Для каждого When шаг разложения, задайте, когда шаг активен, используя данные перечисления активного шага. Для примера:

      VerifyBoth when TSActiveStepIN == TSActiveStepEnum.PressBothButtons

    3. Добавить verify операторы на каждый шаг оценки.

Активируйте verify Операторы с условиями сигнала

Если ваша модель не использует источник Test Sequence блоков или если шаги Test Sequence не соответствуют условиям для проверки, используйте уникальные условия сигнала для активации verify операторы. Размещение verify операторы в When последовательность разложения и использование условных операторов в When условия.

Для примера эта тестовая обвязка использует входной параметр Signal Editor блока.

Блок Test Assessment содержит When последовательность разложения. Каждый подэтап содержит verify оператор. Уникальное условие сигнала активирует каждый подэтап.

Авторские verify Операторы

verify операторы вычисляют логические выражения. Можно пометить результаты в Диспетчере тестов необязательными аргументами.

A verify оператор возвращает pass, fail, или untested результат для каждого временного шага и для общей симуляции. A fail в любом временном шаге результатов в общем fail. Если результатов сбоя нет, pass в любом временном шаге результатов в общем pass. В противном случае общий результат untested. Результаты появляются в Verify Statements разделе результатов тестирования. Для получения дополнительной информации о verify синтаксис и факторы по его использованию см. на verify странице с описанием.

Пример

При этом сравнении двух значений родительский шаг использует verify операторы для оценки двух локальных переменных x и y во время симуляции.

  • verify(x >= y) проходит в целом, потому что это верно для всей тестовой последовательности.

  • verify(x == y) и verify(x ~= y) сбой из-за сбоя в step_1_2 и step_1_1, соответственно.

Диспетчер тестов отображает результаты:

См. также

| | |

Похожие темы