Main Content

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

フル カバレッジのためのパラメーター制約値の指定

この例について

この例では、単純な Simulink® モデルを作成および解析する方法を説明します。ここでは、判定カバレッジを達成するテスト ケースを生成します。ただし、この例では、Simulink Design Verifier™ が解析時に特定のブロック パラメーターを変数として処理する場合にのみ、完全な判定カバレッジが達成されます。この例では、解析で使用するパラメーター コンフィギュレーションの指定方法を説明します。

次のワークフローはこの例の完了までの手順です。

タスク説明参照先
1

モデル例を作成します。

モデル例の作成

2

Constant ブロック パラメーターの値として変数を指定します。

Constant ブロックのパラメーター化

3

Constant ブロックが指定する変数の値を制約します。

パラメーター制約の自動生成

4

モデルのテスト ケースを生成し、その結果を解釈します。

モデル例の解析

5

テスト ケースのシミュレーションを実行し、結果の判定カバレッジを測定します。

テスト ケースのシミュレーション

モデル例の作成

この例で使用する単純な Simulink モデルを作成します。

  1. 空の Simulink モデルを作成します。

  2. 次のブロックを空の Simulink エディターにコピーします。

    • Sources ライブラリから:

      • 入力信号を初期化する 2 つの Inport ブロック

      • スイッチを制御する 1 つの Constant ブロック

    • Signal Routing ライブラリから: 単純なロジックを提供する 1 つの Multiport Switch ブロック

    • Sinks ライブラリから: 出力信号を受け取る 1 つのOutport ブロック

  3. Multiport Switch ブロックをダブルクリックしてそのダイアログ ボックスにアクセスし、[データ端子数] オプションを 2 と指定します。

  4. モデルが次のようになるように、ブロックを接続します。

  5. [シミュレーション] タブで、[準備] セクションの右側にある矢印をクリックし、[モデル設定] をクリックします。

  6. [コンフィギュレーション パラメーター] ダイアログ ボックスで、[ソルバー] を選択します。[ソルバーの選択] の下で、[タイプ] オプションを [固定ステップ] に設定してから [ソルバー] オプションを [離散 (連続状態なし)] に設定します。

  7. [診断] ペインで、[自動ソルバー パラメーターの選択][なし] にします。

  8. [OK] をクリックして、変更を適用して [コンフィギュレーション パラメーター] ダイアログ ボックスを閉じます。

  9. モデルを次の手順で使用するために ex_defining_params_example として保存します。

Constant ブロックのパラメーター化

変数を Constant ブロックの [定数値] パラメーターの値として指定することで、モデルの Constant ブロックをパラメーター化します。

  1. Constant ブロックをダブルクリックします。

  2. [定数値] ボックスに「A」と入力します。

  3. [OK] をクリックして変更を適用し、Constant ブロック パラメーターのダイアログ ボックスを閉じます。

  4. モデルを保存します。

ワークスペース変数のプリロード

Constant ブロックで参照される MATLAB® ワークロード変数 A の値をプリロードします。

  1. [モデル化] タブで、[モデル設定][モデル プロパティ] を選択します。

  2. [コールバック] タブをクリックします。

  3. PreLoadFcn に次を入力します。

    A = int8(1);
  4. [OK] をクリックして [モデル プロパティ] ダイアログ ボックスを閉じ、変更内容を保存します。

  5. モデルを閉じます。

  6. モデルを開きます。

    モデルが開かれると、PreLoadFcn は値が 1 の int8 型の変数 A を定義します。

パラメーター制約の自動生成

パラメーター テーブルを使用して変数 A を指定の値に制約します。

  1. [アプリ] タブで、[アプリ] セクションの右側にある矢印をクリックします。

    [モデルの検証とテスト] で、[Design Verifier] をクリックします。

  2. [Design Verifier] タブの [準備] セクションのモード設定のドロップダウン メニューから、[設定] をクリックします。

  3. [コンフィギュレーション パラメーター] ダイアログ ボックスで、[Design Verifier][パラメーター] を選択します。

  4. [パラメーター コンフィギュレーションの有効化] を選択します。

  5. [パラメーター テーブルを使用] を選択します。

  6. [モデル内を検索] をクリックします。

    パラメーター テーブルにモデルのパラメーターが読み込まれます。可能な場合、それぞれのパラメーターのデータ型とモデル内での位置からその制約値が自動生成されます。

    この場合、定義したパラメーター A の行が表示されます。テーブル内の A の行には次の情報が表示されます。

    • [名前] 列にパラメーター名 (A)。

    • [制約] 列に、パラメーター A に指定された制約。パラメーター テーブルによって、制約値 {1, 2} が自動生成されます。

    • [値] 列に、ベース ワークスペースでの A の値。この値は 1 です。

    • [モデル要素] 列に、A の帰属モデル コンポーネント (ex_defining_params_example/Constant)。

    • [使用] 列に、テーブル内の指定制約値が解析用に設定されているかどうかを示すチェック ボックス。

  7. パラメーター テーブル内のパラメーター A の行で、必ず [使用] チェック ボックスを選択してください。

    このパラメーター コンフィギュレーションを有効にすると、Simulink Design Verifier 解析時に、パラメーター Aint8 の 1 と 2 の値しか取りません。

  8. [コンフィギュレーション パラメーター] ダイアログ ボックスで、[OK] をクリックします。

  9. モデルを保存します。

モデル例の解析

先ほど作成したパラメーター コンフィギュレーションを使用してモデルを解析し、解析レポートを生成します。

  1. [Design Verifier] タブの [モード] セクションで、[テスト生成] を選択します。[テスト生成] をクリックします。

    Simulink Design Verifier がモデルを解析し、テスト ケースが生成されます。

  2. 解析の完了後、[Simulink Design Verifier の検証結果の概要] ウィンドウで、[詳細な解析レポートを生成] を選択します。

    ex_defining_params_example_report.html という名前の HTML レポートが表示されます。

    次の手順で使用するために、[検証結果の概要] ウィンドウは開いたままにしておきます。

  3. Simulink Design Verifier レポートの [目次]Test Cases をクリックします。

  4. Test Case 1 をクリックして、そのテスト ケースのサブセクションを表示します。

    このセクションには、モデルのカバレッジ オブジェクティブを達成させるために Simulink Design Verifier が生成した Test Case 1 の詳細情報が表示されます。このテスト ケースではパラメーター A の値 1 によりオブジェクティブが達成されています。

  5. [テスト ケース] の章を Test Case 2 のセクションまでスクロールします。

    このセクションには、モデルの別のカバレッジ オブジェクティブを達成させる Test Case 2 の詳細情報が表示されます。このテスト ケースではパラメーター A の値 2 によりオブジェクティブが達成されています。

テスト ケースのシミュレーション

生成されたテスト ケースをシミュレートし、シミュレーションの結果のカバレッジ レポートをレビューします。

  1. [Simulink Design Verifier の検証結果の概要] ウィンドウで、[ハーネス モデルの作成] を選択します。

    ex_defining_params_example_harness という名前のハーネス モデルが作成されて開きます。

  2. ハーネス モデルの Inputs というラベルのブロックは、テスト ケースの信号を含む Signal Builder ブロックです。Inputs ブロックをダブルクリックして、Signal Builder ブロックのテスト ケースの信号を表示します。

  3. [Signal Builder] ダイアログ ボックスで、[すべて実行] ボタン をクリックします。

    Simulink ソフトウェアは、各テスト ケースを逐次シミュレートし、それぞれのシミュレーションのカバレッジ データを収集して、最後のシミュレーションの終了時にカバレッジの結果を集約した HTML レポートを表示します。

  4. モデル カバレッジ レポートで概要節をレビューします。

    この節には、ハーネス モデルとその Test Unit サブシステムのカバレッジの結果がまとめられています。サブシステムが 100% の判定カバレッジを達成していることを確認します。

  5. 概要節で Test Unit サブシステムをクリックします。

    レポートには、Test Unit サブシステムの詳細なカバレッジの結果が表示されます。

    この節では、テスト ケースがそれぞれのスイッチ経路を確認しているという理由により、Multiport Switch ブロックは 100% の判定カバレッジを達成することを明示しています。

参考