カスタム テスト オブジェクティブのワークフローの作成
拡張改良条件判定カバレッジ (MCDC) は、検出サイトで検出可能なテスト ブロックの既定のカバレッジ オブジェクティブを考慮します。カスタム テスト オブジェクティブの検出可能性ステータスをチェックするために、モデル オブジェクトのテスト オブジェクティブを作成し、拡張 MCDC 解析を実行できます。
Product ブロックと Min ブロックで構成される次のモデルについて考えます。Product ブロックのカスタム テスト オブジェクティブを作成して 0 より小さい出力値をレンダリングし、検出サイトでカスタム テスト オブジェクティブの効果を検出できます。

カスタム テスト オブジェクティブの作成手順
このワークフローでは、ブロックのカスタム テスト オブジェクティブの作成手順を説明します。
手順 1: カスタム テスト オブジェクティブを作成するために、Atomic マスク サブシステムのライブラリを作成します。マスク サブシステムは次のブロックで構成されています。
検討対象のブロック。たとえば Product ブロックなど。
カスタム テスト オブジェクティブをエンコードするロジック。たとえば MATLAB Function ブロックなど。
Simulink® Design Verifier™ の Test Objective ブロック。

手順 2: マスク サブシステムで、次を行います。
isEnabledForDetectabilityパラメーターを追加して、パラメーターをOnに設定します。検討対象のブロックの名前で
detectBlockパラメーターを追加します。detectBlockパラメーターのEvaluate属性をOffに設定します。
手順 3: 検討対象のブロックをマスク サブシステムに置き換えるブロック置換ルールを定義します。
カスタム テスト オブジェクティブを作成するには、blkrep_rule_product_customTestObjective.m ブロック置換ルールのサンプル ファイルを使用します。ブロック置換ファイルで、rule.BlockType と rule.ReplacementPath を、実際のモデル ブロックに基づいて更新します。詳細については、サポートされていないブロックのブロック置換を参照してください。
手順 4: ブロック置換ルールを使用してモデルを構成します。[コンフィギュレーション パラメーター] ダイアログ ボックスの [Design Verifier] 、 [ブロック置換] ペインで、[ブロック置換ルールのリスト] を入力します。
手順 5: [モデル カバレッジ オブジェクティブ] に Enhanced MCDC を選択して、テスト生成解析を実行します。
拡張 MCDC 用のモデルのカスタム テスト オブジェクティブの解析
この例では、sldvCustomTestObjectiveExample モデルで Product ブロックのカスタム テスト オブジェクティブを作成する方法を説明します。また、検出サイトでテスト オブジェクティブの効果を検出する方法を説明します。
1.sldvCustomTestObjectiveExample モデルを開きます。
open_system('sldvCustomTestObjectiveExample');
Atomic マスク サブシステムのライブラリ:blkReplacementlib_customTestObjective ライブラリは、custProduct マスク サブシステムで構成されています。カスタム テスト オブジェクティブをエンコードするロジックは MATLAB Function ブロックで定義されます。getCustomTestObjectives MATLAB Function ブロックは、Test Objective ブロックの 2 つのカスタム条件で構成されています。

custProduct マスク サブシステムは、次のパラメーターで事前構成されています。詳細については、マスク エディターの概要を参照してください。

検討対象のブロックをマスク サブシステムに置き換えるブロック置換ルール:sldvCustomTestObjectiveExample モデルはブロック置換オプションで事前構成されています。ブロック置換ルールは、Product ブロックを custProduct マスク サブシステムに置き換える blkrep_rule_product_customTestObjective ファイルで定義されています。

2.拡張 MCDC オブジェクティブ用にモデルを構成するには、[Design Verifier] タブで、[テスト生成の設定] をクリックします。[コンフィギュレーション パラメーター] ダイアログ ボックスの [Design Verifier]、[テスト生成] ペインで、[モデル カバレッジ オブジェクティブ] に対して Enhanced MCDC を選択します。[OK] をクリックします。
3.テスト ケースを生成するには、[テストの生成] をクリックします。
ソフトウェアは、テスト生成に関して置換モデルを解析します。

4.解析が完了すると、結果がモデル内で強調表示されます。Product ブロックの検出可能性を解析するには、Product ブロックをクリックします。

結果には、Product ブロックのテスト オブジェクティブが検出可能と表示されます。テスト ケースが生成されます。
メモ: ブロック置換によって導入されたオブジェクティブに関しては、検証結果によってオブジェクティブのステータスを確認することはできません。したがって、テスト オブジェクティブのステータスは [達成 - シミュレーションが必要] として報告されます。検証の詳細については、Simulink Design Verifier が検証結果を使用して近似をレポートする方法を参照してください。
5.[テスト ケースを表示] をクリックします。ハーネス モデルおよび Signal Editor ブロックが開きます。[信号エディターを開く] ボタンをクリックしてテスト ケースを確認します。
6.[結果の概要] で [HTML] をクリックして、詳細な解析レポートを表示します。ブロック置換の概要には、置換されたブロックの詳細が示されます。

[テスト オブジェクティブのステータス] 節にはオブジェクティブがリストされます。検出サイトで検出可能なテスト オブジェクティブが表にまとめられています。
