このセクションでは、要求管理システムから IDE にデータをインポートし、C/C++tset の機能を使用してインポートされたすべての要求が単体テストによって検証されているかを確認する方法を説明します。
このセクションの内容
概要
C/C++test は要求管理システム (RMS) から IDE に要求の情報をインポートし、インポートされた要求とプロジェクト内のテスト ケースの関係を視覚化できます。要求ビューで関係を参照することで、テスト ケースでカバーされていない要求を簡単に見つけ出し、適切なテスト ケースを作成してギャップに対処できます。
このプロセスは大きく 3 つのステップに分かれます。
- DTP または ReqIF ファイルから IDE にデータをインポートします。
- ワークスペース内のプロジェクトをスキャンし、インポートされた要求に関連する既存のテスト ケースを探します。
- インポートされた要求に関連する新規テスト ケースを作成します。
サポート対象の要求管理システム
- CodeBeamer
- Jira (DTP からのインポートのみ)
- Polarion
前提条件
ファイルから要求をインポートする場合:
- 要求管理システムから ReqIF フォーマットで要求をエクスポートします。
- 要求とテスト定義の識別子、名前、説明など、要求とテスト定義の関連を識別し、作成するために必要な情報、そして要求とテスト定義がどのように関係するか (どのテスト定義が特定の要求を検証するかなど) の情報がすべて ReqIF ファイルに含まれていることを確認します。
DTP から要求をインポートする場合:
- DTP への接続を設定します。
- 要求をインポートするプロジェクトを選択します。
「DTPとの接続」を参照してください。
要求のインポートとレビュー
DTP から、または RMS からエクスポートされたReqIF ファイルから要求をインポートできます。
- IDE メニューの [Parasoft] > [ビューの表示] > [要求] をクリックし、要求ビューを開きます。
- ビューのメニューの [インポート] をクリックし、[DTP...] または [ローカル ファイル...] を選択してインポート ダイアログを開きます。
- 次の情報を指定します。
- ファイルからインポートする場合、RMS からエクスポートされた ReqIF ファイルへのパスを指定し、ファイルからインポートする仕様を選択します。
- DTP からインポートする場合、DTP のプロジェクトからインポートする仕様を選択します。 - [OK] をクリックします。C/C++test はインポートされたデータを要求ビューに表示します。
インポートされたデータの確認
C/C++test はインポートされた要求を要求ビューに表示します。RMS によっては、要求に 1 つまたはそれ以上の「テスト定義」と呼ばれるサブモジュールが含まれる場合があります。すべての作業アイテム (要求と、テスト定義があればそのテスト定義) はツリーのノードとして表示され、折り畳みまたは展開できます。
作業アイテムをダブルクリックすると、サマリー1が開きます。サマリーには要求またはテスト定義の ID、名前、説明が含まれます。あるいは、要求ツリーのノードを右クリックし、メニューから [詳細の表示] をクリックしてサマリーを開くこともできます。
1 外部ブラウザーでサマリーを開くかどうか尋ねられる場合があります。
作業アイテムを右クリックし、[ID のコピー] をクリックすると、クリップボードに ID をコピーできます。この機能は、ID をコードに貼り付けてアノテーションを作成し、要求またはテスト定義とテスト ケースを関連付けるのに便利です (「テスト ケースと要求の関連付け」を参照)。
既存の関連付けの検出
IDE にインポートした作業アイテムとプロジェクトのテスト ケースの関連を検出するには、以下の場面で要求ビューのツールバーの [テストケースのスキャン] をクリックします。
- 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 を構成するテスト定義がすべて対応するテスト ケースを持っているため、要求から アイコンが削除され、完了としてマークされます。
例 2
次のサンプルでは、要求 102138、102189、102190 が IDE にインポートされています。要求にはテスト定義が含まれていません。
プロジェクトには要求 102189 に直接関連付けることができるテスト ケース "test_main_7" があります。関連付けを行うには、テスト ケースにアノテーション @req 102189
を付加します。
自動検出モードが有効な場合、ファイルを保存すると要求ビューがリフレッシュされます。自動検出モードが無効な場合、[テスト ケースのスキャン] をクリックします (「既存の関連付けの検出」を参照)要求ビューにテスト定義 102189 とテスト ケース "test_main_7" の関連が表示されます。さらに、要求 102189 から アイコンが削除され、完了としてマークされます。