メインコンテンツ

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

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

この例では、テスト スクリプトにリンクすることで、MATLAB® xml ユニット テストからの結果を統合します。"要件エディター" の検証ステータスにテスト結果が反映されます。この例では、counter_req という名前の要件セット ファイルと myMUnitResults.xml という名前の XML ユニット テスト ファイルを使用します。このファイルには、testCounterStartsAtZero という名前のテスト ケースが含まれます。

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

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

myReqSet = slreq.open("counter_req.slreqx");

The counter_req requirement set

MUnit テスト ファイルからの結果を統合するカスタム ドキュメント インターフェイスを登録します。

rmi register custom_mymljunitresults

関数 GetResultFcn のカスタム ロジックは、テスト ケースに対応する結果ファイルの場所を特定し、その XML ファイルから結果を取得します。テストは、JUnit 出力を生成する XML プラグインを用いるカスタマイズされたテスト ランナーを使用して実行されます。XML Plugin クラスは、テスト結果を myMUnitResults.xml というファイルに書き込むプラグインを作成します。

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

リンクの作成

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

externalSource.id = "testCounterStartsAtZero";
externalSource.artifact = "counterTests.m";
externalSource.domain = "custom_mymljunitresults";

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

requirement = find(myReqSet,Type="Requirement",SID=2);

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

link = slreq.createLink(requirement,externalSource);

このコマンドは、テスト ケース testCounterStartsAtZero と、SID が 2 の要件の間にリンクを作成します。

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

"要件エディター" で、リンクが右側のペインの [リンク] に表示されます。

The Links section is expanded and displays one Confirmed By link.

検証ステータスの表示

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

updateVerificationStatus(myReqSet)

"要件エディター" に検証ステータスの列を表示するには、[ビュー] セクションで [列][検証ステータス] が選択されていることを確認します。更新後、要件の検証ステータスを取得します。

status = getVerificationStatus(myReqSet)
status = struct with fields:
        failed: 0
     justified: 0
          none: 2
        passed: 0
         total: 3
    unexecuted: 1

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

The Requirements editor with the counter_req requirement set. The verification status for requirement 1.1 is green.

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

myReqSet = slreq.open("counter_req.slreqx");

"要件エディター" に、要件セット内の各要件の検証ステータスが表示されます。counterSetsValue の要件の検証ステータスは完全に検証されています。

The Requirements editor with the counter_req requirement set. The cursor is on requirement 1 and shows that 1 requirement has passed.

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

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

rmi unregister custom_mymljunitresults

参考

トピック