Main Content

テストとしてカスタムに作成された MATLAB スクリプトからの結果の統合

この例では、要件を MATLAB® スクリプトにリンクします。要件エディターの検証ステータスにテスト結果が反映されます。この例では、テスト スクリプトへのリンクで説明した手順を実行します。この例では、counter_req.slreqx という名前の要件セット ファイル、および Counter.mCounter クラスのテストを実行する runmytests.m という MATLAB スクリプトを使用します。テスト スクリプトには、結果を TAP 形式で results.tap という名前のファイルに書き込むカスタム メソッドが含まれています。

カスタム ドキュメント インターフェイスの登録

リンクを作成する前に、カスタム ドキュメント インターフェイスを登録する必要があります。要件エディターで要件ファイル counter_req.slreqx を開きます。

reqSet = slreq.open('counter_req.slreqx');

requirement_set_tap.png

外部テスト ファイルに固有のカスタム ドキュメント インターフェイスを登録します。

rmi register custom_mymscripttap

関数 GetResultFcn のカスタム ロジックは、テスト ケースに対応するテスト ファイルの場所を特定し、そのテスト ファイルから結果を取得します。

登録コマンドが警告を返す場合、ファイルの登録を解除し、コマンドをもう一度実行しなければなりません。ファイルの登録を解除するには、「rmi unregister custom_mymscripttap」と入力します。

リンクの作成

外部テストのプロパティを含む struct を作成します。リンクを作成するには、コマンド プロンプトに以下を入力します。

externalSource.id = 'counterStartsAtZero';
externalSource.artifact = 'runmytests.m';
externalSource.domain = 'custom_mymscripttap';

リンクに関連する要件の SID は 2 に設定されています。リンクに関連する要件を見つけるには、以下を入力します。

requirement = reqSet.find('Type','Requirement','SID',2);

リンクを作成するには、以下を入力します。

link = slreq.createLink(requirement, externalSource);

このコマンドは、テスト ケース counterStartsAtZero と、SID が 2 の要件の間にリンクを作成します。要件エディターで、[詳細] ペインの [リンク] にリンクが表示されます。

古い結果を参照することがないように、結果ファイルのタイムスタンプがリンク作成のタイムスタンプよりも新しいことを確認してください。結果ファイルを開き、ファイルでダミーの変更を行ってもう一度保存することで最新のタイムスタンプを取得します。

検証ステータスの表示

検証ステータスを表示するには、まず、要件セットの検証ステータスを更新する必要があります。MATLAB コマンド プロンプトで、以下を入力します。

reqSet.updateVerificationStatus;

要件エディターに検証ステータスの列を表示するには、showColumns_16.png [列][検証ステータス] が選択されていることを確認します。更新後、要件の検証ステータスを取得します。

status = reqSet.getVerificationStatus;

要件エディターに、パスまたは失敗した要件セット全体の検証ステータスが示されます。

verification_status_counter_starts_at_zero.png

counterStartsAtZero の要件の検証ステータスは完全に検証されています。要件エディターを開き、検証ステータスを表示します。

reqSet = slreq.open('counter_req.slreqx');

検証ステータスは、3 つのテストのうち 1 つがパスしたことを示しています。要件エディターで要件の検証ステータスを表示するには、[リフレッシュ] をクリックします。

overall_verification_status_counter_starts_at_zero.png

カスタム ドキュメント インターフェイスの登録を解除します。

rmi unregister custom_mymscripttap

関連するトピック