Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

外部の結果ファイルからの結果の統合

この例では、要件を Excel 形式の結果ファイルにリンクします。Simulink 要件エディターの検証の状態にテスト結果が反映されます。この例では、要件ファイルへのリンクで説明した手順を実行します。この例を実行するには、Open Example をクリックして実行します。この例では、以下を使用します。

  • counter_req.slreqx という名前の要件セット ファイル。

  • results.xlsx という名前のテスト結果ファイル。このファイルには、counterSetsValue という名前のテスト ケースが含まれます。

手順 1: リンク タイプを登録します。

リンクを作成する前に、要件セット ファイルからリンク タイプを登録する必要があります。要件エディターで要件ファイル counter_req.slreqx を開きます。

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

外部結果ファイルに固有のリンク タイプを登録します。この例で必要なドメイン登録は linktype_myexcelresults.m. です。カスタム リンクタイプ link type_myexcelresults.m を登録するには、以下を入力します。

rmi register linktype_myexcelresults;

関数 GetResultFcn のカスタム ロジックは、テスト ケースに対応する結果ファイルの場所を特定し、その結果ファイルから結果を取得します。GetResultFcn の詳細については、リンクとリンク タイプを参照してください。メモ: 登録コマンドが何らかの警告を返す場合、ファイルの登録を解除し、コマンドをもう一度実行しなければなりません。ファイルの登録を解除するには、rmi unregister linktype_myexcelresults と入力します。

手順 2: リンクの作成

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

externalSource.id = 'counterSetsValue';
externalSource.artifact = 'results.xlsx';
externalSource.domain = 'linktype_myexcelresults';

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

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

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

link = slreq.createLink(requirement, externalSource);

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

手順 3: 検証の状態の表示

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

 reqSet.updateVerificationStatus;

要件エディターに検証の状態の列を表示するには、 [列][検証の状態] を選択します。更新後、要件の検証の状態を取得します。

status = reqSet.getVerificationStatus
status = struct with fields:
         total: 3
        passed: 1
        failed: 0
    unexecuted: 0
     justified: 0
          none: 2

要件エディターを開き、検証の状態を表示します。

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

要件エディターに、要件セット内の各要件の検証の状態が表示されます。

counterSetsValue の要件の検証の状態は完全に検証されています。

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

クリーンアップ

開いている要件セットおよびリンク セットをクリアし、開いているすべてのモデルを保存せずに閉じます。リンクタイプの登録を解除します。

slreq.clear;
bdclose('all');
rmi unregister linktype_myexcelresults;

関連するトピック