このセクションでは、要求管理システムから IDE にデータをインポートし、C/C++tset の機能を使用してインポートされたすべての要求が単体テストによって検証されているかを確認する方法を説明します。
このセクションの内容
C/C++test は要求管理システム (RMS) から IDE に要求の情報をインポートし、インポートされた要求とプロジェクト内のテスト ケースの関係を視覚化できます。要求ビューで関係を参照することで、テスト ケースでカバーされていない要求を簡単に見つけ出し、適切なテスト ケースを作成してギャップに対処できます。
このプロセスは大きく 3 つのステップに分かれます。
ALM/RMS | 注意 |
---|---|
Azure DevOps | DTP からのインポートには DTP 2021.2 以降が必要です。 |
CodeBeamer | DTP からのインポートには DTP 2020.2 以降が必要です。 |
Jama Connect | DTP からのインポートには DTP 2021.2 以降が必要です。 |
Jira | DTP からのインポートには DTP 2020.2 以降が必要です。 ReqIF ファイルからのインポートはサポートされていません。 |
Polarion | DTP からのインポートには DTP 2021.2 以降が必要です。 |
Requirements Traceability ライセンスが必要です。詳細は Parasoft 製品担当者にお問い合わせください。 |
ReqIF から要求をインポートする場合:
DTP から要求をインポートする場合:
DTP から、または RMS からエクスポートされたReqIF ファイルから要求をインポートできます。
C/C++test はインポートされた要求を要求ビューに表示します。RMS によっては、要求に 1 つまたはそれ以上の「テスト定義」と呼ばれるサブモジュールが含まれる場合があります。すべての作業アイテム (要求と、テスト定義があればそのテスト定義) はツリーのノードとして表示され、折り畳みまたは展開できます。
作業アイテムをダブルクリックすると、サマリー1が開きます。サマリーには要求またはテスト定義の ID、名前、説明が含まれます。あるいは、要求ツリーのノードを右クリックし、メニューから [詳細の表示] をクリックしてサマリーを開くこともできます。
1 外部ブラウザーでサマリーを開くかどうか尋ねられる場合があります。
作業アイテムを右クリックし、[ID のコピー] をクリックすると、クリップボードに ID をコピーできます。この機能は、ID をコードに貼り付けてアノテーションを作成し、要求またはテスト定義とテスト ケースを関連付けるのに便利です (「テスト ケースと要求の関連付け」を参照)。
IDE にインポートした作業アイテムとプロジェクトのテスト ケースの関連を検出するには、以下の場面で要求ビューのツールバーの [テストケースのスキャン] をクリックします。
あるいは、要求ビューのメニューの [テスト ケースの自動検出] をクリックして自動検出モードを有効にします。すると、C/C++test は要求をインポートした後や更新を行ったときに自動的に関連を検索します。
スキャン プロセスが終了すると、検出されたテスト ケースが要求ビューの対応する作業アイテムと照合されます。テスト ケースを右クリックして以下のいずれかを選択できます。
テスト ケースに関連付けられていない要求およびテスト定義には警告アイコンが付きます。
ビューをフィルタリングし、テスト ケースでカバーされていない要求だけをパネルに表示することもできます。
[テスト ケースがない作業項目をフィルター] オプションを有効にすると、テスト ケースに関連付けられていない要求やテスト定義を簡単にフィルタリングできます。このオプションを有効にすると、すでにテスト ケースに関連付けられている作業アイテムは非表示になり、対処すべき不足部分に集中できます。
テスト ケースと作業アイテムを関連付けるには、テスト ケースに次のアノテーションを追加します。
@req
- テスト ケースと要求を関連付けます。@test
- テスト ケースとテスト定義を関連付けます。1 つ以上の要求またはテストを要求ビューからテスト ケース エクスプローラーのテストケースまたはテストスイート、またはその反対にドラッグ&ドロップして、関連付けを行うことができます。テスト ケース コードにアノテーションが自動的に追加されます。
関連はテスト ケース エクスプローラー ビューでテスト ケースの詳細が有効な場合に表示されます ([表示] > [詳細] オプション)。
次のサンプルでは、要求 1252 に 3 つのテスト定義が含まれています。1258、1259、1260: 対応するテスト ケースがあるのは定義 1260 だけです。
テスト定義 1258 と 1259 をテスト ケース "test_main_4" に関連付けるには、このテスト ケースにアノテーション @test 1258 1259
を付加します。
自動検出モードが有効な場合、ファイルを保存すると要求ビューがリフレッシュされます。自動検出モードが無効な場合、[テスト ケースのスキャン] をクリックします (「既存の関連付けの検出」を参照)。要求ビューにテスト定義 1258 および 1259 とテスト ケース "test_main_4" の関連が表示されます。さらに、要求 1252 を構成するテスト定義がすべて対応するテスト ケースを持っているため、要求から アイコンが削除され、完了としてマークされます。
次のサンプルでは、要求 102138、102189、102190 が IDE にインポートされています。要求にはテスト定義が含まれていません。
プロジェクトには要求 102189 に直接関連付けることができるテスト ケース "test_main_7" があります。関連付けを行うには、テスト ケースにアノテーション @req 102189
を付加します。
自動検出モードが有効な場合、ファイルを保存すると要求ビューがリフレッシュされます。自動検出モードが無効な場合、[テスト ケースのスキャン] をクリックします (「既存の関連付けの検出」を参照)要求ビューにテスト定義 102189 とテスト ケース "test_main_7" の関連が表示されます。さらに、要求 102189 から アイコンが削除され、完了としてマークされます。
次の例では、ドラッグ&ドロップ機能を使用して要求テスト 100378 がテスト ケース "test_debit_1" に関連付けられています。コードにアノテーションが追加されます。
Parasoft Traceability Pack extension for DTP を使用すると、トレーサビリティ情報を DTP のウィジェット、レポート、その他の視覚的表現で参照することができます。テストと要求を関連付けた後、テスト スイートを実行します。DTP で C/C++test のテスト ケースのトレーサビリティ情報を表示するための設定については DTP のマニュアルを参照してください。