Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

単純なベースライン テストの作成

この例では、テスト結果をベースライン データと比較する単純なテストを作成する方法を示します。ベースライン テストは、モデルの変更時に出力がベースライン データと必ず一致するようにする場合の回帰テストに便利です。

この例で使用するモデルは sltestBasicCruiseControlBaseline です。このモデルには、6 つの入力信号のバスとスロットルおよびターゲット速度の出力信号をもつ Controller という名前のサブシステムがあります。

モデルを開く

open_system('sltestBasicCruiseControlBaseline')

Cruise control model for baseline test

テスト ハーネスの作成

この例のテスト ハーネスは、サブシステムやメイン モデルを変更せずに Controller サブシステムのテストに使用できる独立したモデルです。

1.メイン モデルで Controller ブロックを右クリックし、メニューから [テスト ハーネス]['Controller' 用に作成] を選択します。

2.[テスト ハーネスの作成] ダイアログ ボックスで [OK] をクリックして、既定値を使用してテスト ハーネスを作成します。作成されたテスト ハーネス sltestBasicCruiseControlBaseline_Harness1 が開きます。

Harness model for controller component

テスト ファイルとテスト構造の作成

テスト マネージャーを開き、テストのテスト ファイルとテスト ファイル構造を作成します。既定の構造はテスト スイートが 1 つで、それに 1 つのテスト ケースが含まれています。テスト ファイルを作成すると、新しいベースライン テスト ケースが既定で作成されます。テスト ファイルに 1 つ以上のテスト スイートを含め、それらに 1 つ以上のテスト ケースを含めることができます。

1.[ハーネス] タブで [Simulink テスト マネージャー] をクリックします。

2.テスト マネージャーで、[新規][テスト ファイル] をクリックして [ファイルの保存] ダイアログ ボックスを開きます。

3.テスト ファイルの名前として「baseline_test」と入力し、[OK] をクリックします。テスト ファイル構造が [テスト ブラウザー] ペインで開きます。

Test file structure showing file, test suite, and test case names

4.[新規テスト ケース 1] を右クリックし、メニューから [名前の変更] を選択します。テスト ケースに My Baseline Test という名前を付けます。

Renamed test case

モデルとテスト ハーネスの指定

テスト ケースに使用するモデルとテスト ハーネスを設定します。

1."My Baseline Test" テスト ケースをクリックします。

2.右側のペインで [テスト対象システム] セクションを展開します。[モデル] フィールドの横にある [現在のモデルを使用] アイコン current model button image をクリックして sltestBasicCruiseControlBaseline.slx をテスト対象モデルとして追加します。

System under test section for the test case

3.[テスト ハーネス] セクションを展開し、[ハーネス] ドロップダウン メニューの横にある [モデル ハーネスを更新] アイコン refresh button image をクリックしてハーネスのリストを更新します。

Test harness section for the test case

4.ドロップダウン メニューから sltestBasicCruiseControlBaseline_Harness1 を選択します。

入力の指定

この例では、inputs.mat ファイルで提供されている入力を使用します。

1.[入力] セクションを展開します。

2.[外部入力][追加] をクリックします。

3.[入力の追加] ダイアログ ボックスで、inputs.mat ファイルを指定するか参照して [追加] をクリックします。

4.[入力の追加] ダイアログ ボックスが展開され、追加のオプションが表示されます。[入力のマッピング] で、[マッピング モード] プロパティは Block Name のままにして [入力をマッピング] をクリックします。[入力の追加] ダイアログ ボックスが更新され、入力が正常にマッピングされたことが示されます。

Add input dialog box

5.[追加] をクリックしてダイアログ ボックスを閉じます。[外部入力] の表に inputs.mat が追加されます。

ベースライン データの取得

ベースライン データを取得して保存します。

1.[ベースライン基準] セクションを展開します。

2.セクションの下部にある [キャプチャ] をクリックします。

3.[ベースラインのキャプチャ] ダイアログ ボックスで、ファイル名として「baseline_data」と入力します。次に、[キャプチャ] をクリックします。モデルがシミュレートされ、ベースライン データが保存されます。

テストの実行と結果の表示

ベースライン テストを実行し、スロットル信号の結果を表示します。

1.[テスト ブラウザー] タブで "My Baseline Test" が選択されていることを確認します。ツールストリップで [実行] をクリックしてベースライン テスト ケースを実行します。

2.テストが完了すると、テスト マネージャーで [結果とアーティファクト] ペインが開きます。この例では、ベースラインの取得後にモデルが変わっていないため、ベースライン テストにパスします。

[結果とアーティファクト] ペインで結果を展開し、"throt:1" 信号を選択します。

Test results plots

上のプロットにベースライン データとシミュレーション出力データの両方が表示され、両者は一致しています。下のプロットは、2 つのデータ セットの差が実行全体を通してゼロであることを示しています。"target:1" 信号についても、テスト結果は一致し、差はゼロになります。

クリーン アップ

テスト結果をクリアし、テスト マネージャーを保存せずに閉じて、モデルを閉じます。

sltest.testmanager.clear
sltest.testmanager.clearResults
sltest.testmanager.close
close_system('sltestBasicCruiseControlBaseline',0)

関連するトピック