verify
ОператорыМожно проверить симуляцию модели, включив блок Test Assessment в модель или тестовую обвязку и авторские verify
операторы в блоке Test Assessment. verify
операторы возвращают pass
, fail
, или untested
результаты как для общей симуляции, так и для отдельных временных шагов. Результаты отображаются в Диспетчере тестов.
verify
Операторы в блоке Test AssessmentЭтот Test Assessment содержит When
последовательность разложения. The When
последовательность разложения помогает вам четко определить условие симуляции, которое активирует каждый verify
оператор:
Если ваша модель использует источник Test Sequence блоков, рассмотрите активацию каждого verify
оператор с использованием активного шага блока Test Sequence.
Если ваша модель не использует источник 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:
Создайте выход данных активного шага для блока Test Sequence:
Выберите Test Sequence блок.
Создайте новый выход перечисленных данных. В Property Inspector выберите Create data to monitor the active step.
Назовите перечисление.
Создайте вход данных для блока Test Assessment:
Откройте Test Assessment блок.
На боковой панели Symbols рядом с Input щелкните значок Add data.
Назовите вход.
На блок-схеме соедините выход блока Test Sequence с входом блока Test Assessment.
Создайте When
последовательность разложения в блоке Test Assessment.
Блок Test Assessment по умолчанию сконфигурирован со When
последовательность разложения. Изменение между стандартной последовательностью и When
последовательность разложения, щелкните правой кнопкой мыши родительский шаг и выберите When decomposition.
Для каждого When
шаг разложения, задайте, когда шаг активен, используя данные перечисления активного шага. Для примера:
VerifyBoth when TSActiveStepIN == TSActiveStepEnum.PressBothButtons
Добавить 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
, соответственно.
Диспетчер тестов отображает результаты:
Оценка теста | Тестовая последовательность | Редактор тестовой последовательности | verify