このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
テスト スクリプトへのリンク
このワークフローでは、外向きリンク エディターと API を使用して、要件を MATLAB® スクリプトにリンクします。要件エディターの検証ステータスにテスト結果が反映されます。これらの説明は、外部のテスト結果を要件の検証ステータスに含めるためのワークフローに従います。詳細については、外部ソースからの結果を検証ステータスに含めるを参照してください。
サンプル ファイルを開く
テストとしてカスタムに作成された MATLAB スクリプトからの結果の統合の例を開きます。
openExample(['slrequirements/' ... 'IntegratingResultsFromACustomAuthoredMATLABScriptAsATestExample'])
要件エディターで counter_req の要件セットを開きます。この要件セットには要件 ID と説明をもつ子要件があります。

MATLAB コード ファイル runmytests.m は、Counter.m の Counter クラスのテストを実行します。runmytests.m ファイルには、テスト結果を TAP 形式で results.tap という名前のファイルに書き込むカスタム メソッドが含まれています。この例では、外向きリンク エディターと Requirements Toolbox™ API を使用して、counter_req 要件セットの要件と runmytests.m のテスト ケースの間のリンクを作成します。
カスタム ドキュメント インターフェイスの作成と登録
テスト スクリプトへのリンクを作成する前に、テスト スクリプトへのリンクとテスト スクリプトからの結果の取得を有効にするためのカスタム ドキュメント インターフェイスを作成して登録します。
MATLAB コマンド ラインで次のコードを実行して
myCustomDocInterface.mファイルを開きます。open(fullfile(matlabroot,"toolbox","slrequirements","slrequirements","linktype_examples","myCustomDocInterface.m"))
関数名
myCustomDocInterfaceをlinktype_mymscripttapに置き換えます。myCustomDocInterface.mのコピーを現在のフォルダーに保存します。MATLAB の [エディター] タブで [保存] 、 [コピーに名前を付けて保存] をクリックします。ファイルをlinktype_mymscripttap.mとして保存します。docInterface.Labelを'MScript TAP Results'として設定します。docInterface.Extensionsを{'.M'}として設定します。既存の
GetResultFcnを次の関数に置き換えます。function result = GetResultFcn(link) testID = link.destination.id; testFile = link.destination.artifact; resultFile = getResultFile(testFile); if ~isempty(resultFile) && isfile(resultFile) tapService = slreq.verification.services.TAP(); result = tapService.getResult(testID, resultFile); else result.status = slreq.verification.Status.Unknown; end end function resultfile = getResultFile(testFile) resultMap = ["runmytests.m", "results.tap";... "othertests.m", "results2.tap"]; resultfile = resultMap(resultMap(:,1) == testFile,2); end
GetResultFcnはユーティリティslreq.verification.services.TAPを使用して、検証の結果ファイルを解釈します。GetResultFcnの詳細については、Define Custom Document Interface for Direct Linking to Requirementsを参照してください。linktype_mymscripttap.mを保存します。リンク タイプを登録します。コマンド ラインに次のように入力します。
rmi register linktype_mymscripttap
メモ
コマンドが警告を返す場合、ファイルを登録解除し、手順 5 に再度従わなければなりません。以下を入力して、ファイルを登録解除します。
rmi unregister linktype_mymscripttap
テスト スクリプトのテスト ケースへの要件のリンク
テスト結果を生成するテスト スクリプトへの要件からのリンクを作成して、要件を確認できます。外向きリンク エディターを使用して、または Requirements Toolbox API を使用して、リンクを作成できます。
外向きリンク エディターを使用したリンクの作成
外向きリンク エディターを使用して、要件からテスト スクリプトへのリンクを作成します。
要件エディターを開き、
counter_req.slreqx要件セットで子要件1.1を右クリックして、[[外向きリンク] ダイアログを開く] を選択します。外向きリンク エディターのダイアログ ボックスの [要件] タブで、[新規] をクリックします。
以下の詳細を入力してリンクを確立します。
説明:
runmytestscounterStartsAtZeroドキュメント タイプ:
MScript TAP Resultsドキュメント:
runmytests.m場所:
counterStartsAtZero
[OK] をクリックします。要件エディターの [リンク] セクションでリンクが強調表示されます。

API を使用したテスト スクリプトへのリンク
API を使用して、要件からテスト スクリプトへのリンクを作成します。
MATLAB コマンド プロンプトで、次を入力します。
externalSource.id = 'counterStartsAtZero'; externalSource.artifact = 'runmytests.m'; externalSource.domain = 'linktype_mymscripttap';
以下を入力して、リンクに関連する要件を見つけます。
requirement = reqSet.find(Type="Requirement",SID=2);以下を入力してリンクを作成します。
これにより、link = slreq.createLink(requirement,externalSource);
SIDが2に設定された要件のテスト ケースcounterStartsAtZeroとしてリンクが作成されます。要件エディターで、リンクが [リンク] 、 [確認者] セクションに表示されます。
検証ステータスの表示
要件セットの検証ステータスを更新して、Excel® の状態ログに基づいて counterStartsAtZero テスト ケースの検証情報を更新します。
[リフレッシュ]
をクリックして、要件エディターで検証ステータスを更新できます。要件セット全体についての検証ステータスが表示されるよう、[列] +
、 [検証ステータス] が選択されていることを確認します。

検証ステータスは、3 つの要件のうち 1 つが検証されたことを示しています。
MATLAB コマンド プロンプトで次のように入力して、検証ステータスを更新して現在のステータスを取得することもできます。
updateVerificationStatus(reqSet) status = getVerificationStatus(reqSet)
MATLAB ユニット テスト ケースからの結果の統合
テスト スクリプトにリンクすることで、MATLAB ユニット テスト ケースの結果を統合することもできます。テストは、JUnit 出力を生成する XML プラグインを用いるカスタマイズされたテスト ランナーを使用して実行されます。XMLPlugin クラスは、テスト結果を XML ファイルに書き込むプラグインを作成します。詳細については、matlab.unittest.plugins.XMLPlugin.producingJUnitFormat を参照してください。
テスト スクリプトを使用する場合と同じ方法でドメインを登録し、リンクを作成できます。