テストとしてカスタムに作成された MUnit スクリプトからの結果の統合
この例では、テスト スクリプトにリンクすることで、MATLAB® xml ユニット テストからの結果を統合します。"要件エディター" の検証の状態にテスト結果が反映されます。この例を実行するには、[例を開く] をクリックして実行します。この例では、以下を使用します。
counter_req.slreqx という名前の要件セット ファイル。
myMUnitResults.xml.
という名前の xml ユニット テスト ファイル。このファイルには、testCounterStartsAtZero
という名前のテスト ケースが含まれます。
手順 1: リンク タイプの登録
リンクを作成する前に、要件セット ファイルからリンク タイプを登録する必要があります。"要件エディター" で要件ファイル counter_req.slreqx
を開きます。
reqSet = slreq.open('counter_req.slreqx');
MUnit テスト ファイルに固有のリンク タイプを登録します。この例で必要なドメイン登録は linktype_mymljunitresults.m
です。カスタム リンクタイプ linktype_mymljunitresults.m
を登録するには、以下を入力します。
rmi register linktype_mymljunitresults;
関数 GetResultFcn
のカスタム ロジックは、テスト ケースに対応する結果ファイルの場所を特定し、その .xml ファイルから結果を取得します。GetResultFcn
の詳細については、リンクとリンク タイプを参照してください。テストは、JUnit 出力を生成する XML プラグインを用いるカスタマイズされたテスト ランナーを使用して実行されます。XML Plugin クラスは、テスト結果を myMUnitResults.xml
というファイルに書き込むプラグインを作成します。
メモ: 登録コマンドが何らかの警告を返す場合、ファイルの登録を解除し、コマンドをもう一度実行しなければなりません。ファイルの登録を解除するには、rmi unregister myMUnitResults.xml
と入力します。
セクション 2: リンクの作成
外部テストのプロパティを含む struct
を作成します。リンクを作成するには、コマンド プロンプトに以下を入力します。
externalSource.id = 'testCounterStartsAtZero'; externalSource.artifact = 'counterTests.m'; externalSource.domain = 'linktype_mymljunitresults';
リンクに関連する要件の SID は 2 に設定されています。リンクに関連する要件を見つけるには、以下を入力します。
requirement = reqSet.find('Type', 'Requirement', 'SID', 2);
リンクを作成するには、以下を入力します。
link = slreq.createLink(requirement, externalSource);
このコマンドは、テスト ケース testCounterStartsAtZero
と、SID が 2 の要件の間にリンクを作成します。"要件エディター" で、リンクが右側のペインの [リンク] に表示されます。
セクション 3: 検証の状態の表示
検証の状態を表示するには、まず、要件セットの検証の状態を更新する必要があります。MATLAB コマンド プロンプトで、以下を入力します。
reqSet.updateVerificationStatus;
"要件エディター" に検証の状態の列を表示するには、 [列]、[検証の状態] が選択されていることを確認します。更新後、要件の検証の状態を取得します。
status = reqSet.getVerificationStatus
status = struct with fields:
total: 3
passed: 0
failed: 0
unexecuted: 1
justified: 0
none: 2
"要件エディター" に、パスまたは失敗した要件セット全体の検証の状態が示されます。
testCounterStartsAtZero
の要件の検証の状態は完全に検証されています。"要件エディター" を開き、検証の状態を表示します。
reqSet = slreq.open('counter_req.slreqx');
"要件エディター" に、要件セット内の各要件の検証の状態が表示されます。counterSetsValue の要件の検証の状態は完全に検証されています。
検証の状態は、3 つのテストのうち 1 つがパスしたことを示しています。"要件エディター" で要件の検証の状態を表示するには、[更新] をクリックします。
リンク タイプの登録を解除します。
rmi unregister linktype_mymljunitresults;