Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

カスタム テスト オブジェクティブのワークフローの作成

拡張改良条件判定カバレッジ (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 ブロック置換ルールのサンプル ファイルを使用します。ブロック置換ファイルで、rule.BlockTyperule.ReplacementPath を、実際のモデル ブロックに基づいて更新します。詳細については、サポートされていないブロックのブロック置換を参照してください。

手順 4: ブロック置換ルールを使用してモデルを構成します。[コンフィギュレーション パラメーター] ダイアログ ボックスの [Design Verifier][ブロック置換] ペインで、[ブロック置換ルールのリスト] を入力します。

手順 5: [モデル カバレッジ オブジェクティブ]Enhanced MCDC を選択して、テスト生成解析を実行します。

拡張 MCDC 用のモデルのカスタム テスト オブジェクティブの解析

この例では、sldvCustomTestObjectiveExample モデルで Product ブロックのカスタム テスト オブジェクティブを作成する方法を説明します。次に、検出サイトでテスト オブジェクティブの効果を検出する方法を説明します。

  1. sldvCustomTestObjectiveExample モデルを開きます。

    addpath(fullfile(docroot,'toolbox','sldv','examples'));
    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 ブロックのテスト オブジェクティブが検出可能と表示されます。テスト ケースが生成されます。

    メモ

    ブロック置換によって導入されたオブジェクティブに関しては、検証結果によってオブジェクティブのステータスを確認することはできません。したがって、テスト オブジェクティブのステータスは [達成 - シミュレーションが必要] として報告されます。検証の詳細については、検証結果による近似のレポートを参照してください。

  5. [テスト ケースを表示] をクリックします。ハーネス モデルが開き、Signal Builder ブロックにテスト ケースが表示されます。

  6. [検証結果の概要] で [HTML] をクリックして、詳細な解析レポートを表示します。ブロック置換の概要には、置換されたブロックの詳細が示されます。

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

関連するトピック