このセクションの内容:
次の図は、DOORS Next 環境に Parasoft DTP および Parasoft テスト実行ツールを統合するための自動インフラストラクチャの実装方法を示しています。
@test
または @req
アノテーションを使用して DOORS Next のテスト ケースまたは要件 ID を追加します。アノテーションの追加方法の詳細については、ご使用のツールのドキュメントを参照してください。@test <DOORS Next test ID>
アノテーションを使用して、テストを DOORS Next テスト管理システムに関連付けます。@req <DOORS Next System Requirements Specification ID>
アノテーションを使用して、テストを DOORS Next の要件に関連付けます。Parasoft は、テスト ケースと DOORS Next の要件の間に「検証者」/「検証対象」関係を作成します。 Sending Test Data to External System フローをデプロイした場合 (「Sending Test Data to External System フローのデプロイ」を参照)、Data Collector が Parasoft ツールからデータを受信すると、単体テストと機能テストの結果が DOORS Next に自動的に送信されます。デフォルトでは、フローは Data Collector が受信した任意のプロジェクトの単体テストおよび機能テストの結果をフォワードしますが、特定のプロジェクトのデータだけを送信するようフローを設定できます (「特定の DTP プロジェクトの結果を送信する」を参照)。
また、DTP REST API エンドポイントに POST リクエストを手動で送信して、DTP データベースから DOORS Next に結果を送信することもできます。API 呼び出しの DTP フィルターとビルド ID を URL パラメーターとして渡します。
curl -X POST -u <username>:<password> "http://<host>:<port>/grs/api/v1.7/linkedApps/configurations/1/syncTestCases?filterId=<filterID>&buildId=<buildID>" |
以下の表でエンドポイントのパラメーターについて説明します。
パラメーター | 値 | 説明 | 必須 |
---|---|---|---|
filterId | integer | テスト データを含むフィルター IDを指定します。フィルター ID は整数値です。フィルター名と混同しないでください。 | Required (必須) |
buildId | string | テスト データを含むビルド ID を指定します。 | Required (必須) |
| boolean |
デフォルトは | 任意 |
フィルターおよびビルド ID は、テスト エクスプローラーの URL で利用できます。
DTP は、filterId
パラメーターと buildId
パラメーターに一致するテスト結果を見つけ、そのデータを DOORS Next の作業アイテムに送信します。
@test <ID>
で結果を見つけると、IBM Jazz Test Management で一致する ID を持つアイテムを検索し、そのアイテムを更新します。DOORS Next に単体テスト ケース ID が存在しない場合、アクションは実行されません。必要に応じて、アノテーションを使用して、テストを DOORS Next のテスト実行に関連付けます。@req <ID>
で結果を見つけると、DOORS Next で一致する ID を持つアイテムを検索します。一致が見つかった場合、テスト実行レコードが要件に関連付けられたテスト ケースに追加されます。要件 ID にテスト ケースがない場合、テスト ケースが作成され、テスト実行レコードが追加されます。<DTP_INSTALL>/logs
ディレクトリに書き込まれます。このログ ファイルには、DTP から DOORS Next へのテスト結果の送信に関する進捗情報が含まれています。 DTP がレポートを処理し、結果を DOORS Next に送信した後、以下のような応答があります。
{ "createdTestSession": "DTPP-521", "created": [ "DTPP-519, testName = testBagSumAdd" ], "updated": [ "DTPP-519, testName = testBagSumAdd", "DTPP-518, testName = testBagSimpleAdd" ], "ignored": [ "MAGD-567, testName = testBagNegate", "QAP-512, testName = testTryThis3", "QAP-512, testName = testTryThis4", "MAGD-567, testName = testBagMultiply" ] } |
Sending Test Data to External System フローを使用して単体テストおよび機能テストの結果を送信している場合、デフォルトでは、すべて DTP プロジェクトのデータが DOORS Next に送信されます。結果として、DOORS Next ID に一致するアノテーションを含むすべての DTP プロジェクトで収集されたテストを含むよう、作業アイテムが更新されます。ただし、特定のプロジェクトのデータだけを送信するよう、フローを設定することもできます。
Configure Projects ノードをダブルクリックします。このノードのロジックは、同期操作中に DOORS Next にデータを送信する DTP プロジェクトを指定します。これらのプロジェクト構成は、JSON 配列に格納されます。
例として、すでに定義されているプロジェクト構成のサンプルがあります。
{ project: 'abc' } |
さらにプロジェクト構成を追加するには、最後のプロジェクト構成の末尾にカンマを追加し、その下に新しいエントリを追加します。例:
msg.configuredProjects = [ { project: 'abc' }, { project: 'foobar' } ]; |
フローを実行すると、指定した DTP プロジェクトのテスト結果だけが DOORS Next に送信されます。
Parasoft DTP からテスト実行データを送信すると、DOORS Next で結果を表示できるようになります。テスト結果は、Jazz Test Management (/qm
) と DOORS Next 要件管理 (/rm
) の両方で表示されます。
下の画像は、Jazz Test Management (/qm
) のテスト計画を示しています。このテスト計画は、Parasoft DTP によって作成され (説明に自動的に記載)、/syncTestCases
API の 1 回の実行を表します。
このテスト計画にはテスト ケースが含まれています。各テスト ケースは、Parasoft DTP のテストに相当します。
テスト ケースをドリルダウンして詳細を表示できます。重要なトレーサビリティ情報は 2 つあります。
ここでの要件へのリンクは、Parasoft テストで提供される @req
情報に基づいて、Parasoft DTP /syncTestCases
によって自動的に作成されます。この領域へのリンクは、DOORS Next の要件の Validated By セクションにも作成されます。