このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
verify
ステートメントを使用したモデルのシミュレーションの評価
モデルまたはテスト ハーネスに Test Assessment ブロックを含め、Test Assessment ブロックで verify
ステートメントを作成することで、モデルのシミュレーションを検証できます。verify
ステートメントは、シミュレーション全体と個々のタイム ステップの両方について、pass
、fail
、または untested
の結果を返します。結果はテスト マネージャーに表示されます。
Test Assessment ブロックの verify
ステートメントの有効化
Test Assessment には When
構造シーケンスが含まれています。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 ブロックに 4 つのサブステップをもつ when
構造シーケンスが含まれています。それぞれに verify
ステートメントがあり、Test Sequence ブロックの異なるステップで有効化されます。
この例の Else
ステップにはアクションはなく、前の when
条件のいずれにも一致しないシミュレーション条件を処理します。このようなステップの名前は、Else
のほか、他の任意の望ましい名前にすることができます。このステップに when
条件を含めることはできません。
Test Assessment の verify
ステートメントを Test Sequence ブロックのアクティブなステップで有効にするには、次のようにします。
Test Sequence ブロックのアクティブなステップのデータ出力を作成します。
Test Sequence ブロックを選択します。
新しい列挙データ出力を作成します。プロパティ インスペクターで、[アクティブなステップの監視用データを作成] を選択し、[データ型] を
[Enum]
に設定します。[Enum 名] に名前を入力します。
Test Assessment ブロックのデータ入力を作成します。
Test Assessment ブロックを開きます。
[シンボル] ペインで、[入力] の横にカーソルを合わせ、[データの追加] をクリックします。
入力に名前を付けます。
ブロック線図で、Test Sequence ブロックの出力を Test Assessment ブロックの入力に接続します。
Test Assessment ブロックで
When
構造シーケンスを作成します。Test Assessment ブロックでは、既定で
When
構造シーケンスが構成されています。標準のシーケンスとWhen
構造シーケンスで切り替えるには、親ステップを右クリックして [when 構造] を選択します。それぞれの
When
構造ステップについて、そのステップがアクティブなステップの列挙データを使用してアクティブになるタイミングを定義します。以下に例を示します。VerifyBoth when TSActiveStepIN == ... Test_Sequence_Active_Step_Enum.PressBothButtons
verify
ステートメントを各評価ステップに追加します。
信号条件による verify
ステートメントの有効化
モデルで Test Sequence ブロックをソースとして使用しない場合、またはテスト シーケンス ステップが検証する条件と対応しない場合は、一意の信号条件を使用して verify
ステートメントを有効にします。verify
ステートメントを When
構造シーケンスに配置し、When
条件で条件ステートメントを使用します。
たとえば、次のテスト ハーネスでは Signal Editor ブロックの入力を使用しています。
Test Assessment ブロックに When
構造シーケンスが含まれています。各サブステップに verify
ステートメントがあります。各サブステップが一意の信号条件で有効化されます。
verify
ステートメントの作成
verify
ステートメントは論理式を評価します。オプションの引数を使用して、テスト マネージャーの結果にラベルを付けることができます。
verify
ステートメントは、各タイム ステップとシミュレーション全体について、pass
、fail
、または untested
の結果を返します。いずれかのタイム ステップで fail
になると全体が fail
になります。失敗になる結果が 1 つもない場合、いずれかのタイム ステップで pass
になると全体が pass
になります。それ以外の場合、全体の結果は untested
になります。結果はテスト結果の [verify ステートメント] セクションに表示されます。verify
の構文の詳細と使用する際の考慮事項については、verify のリファレンス ページを参照してください。
例
この 2 つの値の比較では、親ステップで verify
ステートメントを使用して、シミュレーション中に 2 つのローカル変数 x
と y
を評価します。
verify(x >= y)
は、テスト シーケンス全体について true になるため全体にパスします。verify(x == y)
とverify(x ~= y)
は、それぞれstep_1_2
とstep_1_1
で失敗になるため失敗します。
テスト マネージャーに次の結果が表示されます。
参考
Test Sequence エディター | Test Sequence | Test Assessment | verify | sltest.testmanager.Assessment
| sltest.testmanager.AssessmentSymbol
| sltest.testmanager.TestCase