このセクションの内容:
はじめに
CodeBeamer ALM は、要件を管理するための一般的なブラウザー ベースのプラットフォームです。Parasoft DTP と codeBeamer ALM との統合は、以下の機能を実現します。
- 違反エクスプローラー から codeBeamer ALM でバグとタスクを手動で作成する機能。
- テスト エクスプローラー から codeBeamer ALM でバグとタスクを手動で作成する機能。
- codeBeamer の作業アイテムで Parasoft のテスト結果を送信、表示、および更新する機能 (「CodeBeamer へのテスト データの送信」を参照)。
- テスト、静的解析結果、コード レビューを codeBeamer の要件から追跡する機能 (「Traceability Report の表示」を参照)。
要件
次の要件は、テスト結果を codeBeamer に送信する場合にのみ適用されます。
- 次の Parasoft ツールが実行するテストがサポートされていること:
- C/C++test Professional、dotTEST、Jtest 10.4.3 以降
- Selenic 2020.1 以降
- SOAtest 9.10.8 以降
- codeBeamer で要件を作成済みである必要があります。
設定
この設定は、Parasoft 管理者が一度だけ行う必要があります。開発者、テスター、およびその他の DTP エンドユーザーは、Parasoft ツールを codeBeamer ALM と連携して使用する方法について、「使用 」を参照してください。
DTP と codeBeamer ALM サーバーの接続
- 設定ドロップダウン メニュー (歯車のアイコン) から [Report Center 設定] を選択します。
- [外部システム] を選択し、[システム タイプ] ドロップダウンメニューから codeBeamer を選択します。
- [Enabled] オプションを有効化します。
- [名前] フィールドに codeBeamer ALM のインスタンス名を入力します。名前は必須ですが、接続設定に影響したり、他のインターフェイスで表示されたりすることはありません。
- [アプリケーション URL] フィールドに codeBeamer サーバーの URL を入力します。URL には、プロトコル、ホスト、およびポート番号を含める必要があります。パスまたはパラメーターは含めないでください。
- codeBeamer システムへのリンクが作成されると、[表示 URL] フィールドの URL が DTP インターフェイスに表示されます。この URL には、ブラウザーで codeBeamer にアクセスするために必要な追加のパスを含める必要があります。
- [Username] および [Password/API tokens] フィールドにログイン認証情報を入力します。ログインには、[プロジェクトの関連付け] セクションで指定された codeBeamer プロジェクトで課題を作成するのに十分な権限が必要です。
- [接続のテスト] をクリックして設定を確認し、[保存] をクリックします。
Parasoft プロジェクトと CodeBeamer ALM プロジェクトの関連付け
Parasoft プロジェクトと codeBeamer プロジェクトを関連付けると、違反エクスプローラーまたはテスト エクスプローラー ビューから欠陥を作成し、codeBeamer の適切なプロジェクトにリンクすることができます。Sending Test Data to External System フロー を使用する場合、関連付けも重要です。DTP の複数のプロジェクトを 1 つの codeBeamer プロジェクトと関連付けることはできますが、同じ DTP プロジェクトを複数の codeBeamer プロジェクトと関連付けることはできません。
- [プロジェクトの関連付けを作成] をクリックし、[DTP プロジェクト] ドロップダウン メニューからプロジェクトを選択します。
- [外部プロジェクト] フィールドに codeBeamer プロジェクトの名前を入力して [Create] をクリックし、関連付けを保存します。
プロジェクトの関連付けを削除するには、ゴミ箱のアイコンをクリックします。プロジェクトの関連付けを削除しても、DTP のエクスプローラー ビューから codeBeamer の欠陥へのリンクは削除されません。関連付けを削除してから再作成すると、違反と codeBeamer の課題との既存リンクが再び有効になります。
DTP と codeBeamer プロジェクトの既存の関連付けの設定を変更できます。
- 鉛筆アイコンをクリックし、ドロップダウン メニューから別の DTP プロジェクトを選択するか、[外部プロジェクト] フィールドに別の codeBeamer プロジェクトの名前を指定します。
- [保存] をクリックします。
Requirements Traceability Report の有効化
codeBeamer に保存された要件、および Parasoft ツール (C/C++test、dotTEST、Jtest) から DTP に送信されたテスト データ、静的解析データ、ビルド レビュー データとの間のトレーサビリティを実証するのに役立つウィジェットとレポートを生成するように、DTP を構成できます。
Traceability Report にコード レビューと静的解析情報を含める場合は、ソース コード ファイルを codeBeamer の要件に関連付ける必要があります。この機能を有効化する方法については「ファイルと要件の関連付け」を参照してください。
Traceability Pack に同梱されている External System Traceability Report アーティファクトをデプロイすることで、トレーサビリティを表示および追跡する DTP インターフェイスが有効になります。Traceability Pack には、トレーサビリティ ワークフローの一部を自動化する Sending Test Data to External System フ ローも含まれています。Traceability Pack をインストールする方法については、Traceability Pack のドキュメントを参照してください。
DTP Extension Designer を使用して、External System Traceability Report および Sending Test Data to External System フローを環境にデプロイします。アーティファクトを展開する前に、「DTP と codeBeamer ALM サーバーの接続」で説明されているように、DTP が codeBeamer に接続されていることを確認します。
Traceability Pack をインストールする
最初のステップは、 Traceability Pack アーティファクトをインストールすることです。このアーティファクトは、トレーサビリティを可能にする構成ファイルとアセットの集合です。
- 設定メニュー (歯車のアイコン) から [Extension Designer] を選択します。
- [構成] タブをクリックしてアーティファクト マネージャーを開きます。
- [アーティファクトの追加] をクリックし、traceability-pack-<version>.zip アーカイブを参照します (「アーティファクトのダウンロードとインストール」も参照)。
- [インストール] をクリックすると、トレーサビリティを有効にするためのアセットと構成ファイルの集合がインストールされます。
Traceability Report をデプロイする
Traceability Pack をインストールした後、レポート コンポーネントを DTP 環境にデプロイします。
- Extension Designer を開き、[サービス] タブをクリックします。
- 既存のサービスを選択してアーティファクトを展開するか、[DTP ワークフロー] カテゴリで新しいサービスを作成します。サービスとアーティファクトの編成に関する追加情報については、「サービスの使用 」を参照してください。
- 既存のサービスにアーティファクトを追加する場合は、新しい [フロー] タブを追加し (「フローの使用」を参照)、縦の三点メニューから [読み込み] を選択します。
- [ライブラリ] > [Workflows] > [Traceability Pack] > [External System Traceability Report] を選択し、[読み込み] をクリックします。
- [フロー] タブの中をクリックしてサービスにノードをドロップし、[デプロイ] をクリックします。
External System Traceability Report をデプロイすると、Report Center にドリルダウン レポートと新しいウィジェットが追加されます。ウィジェットを追加してレポートを参照する方法については「Traceability Report の表示」を参照してください。
Sending Test Data to External System フローのデプロイ
このアーティファクトは、DTP Data Collector が Parasoft ツールからテスト結果を取得するときに、テスト データを codeBeamer に送信します。このアーティファクトは Traceability Pack に同梱されており、「Traceability Pack をインストールする」の説明にあるように、フローをデプロイする前にインストールする必要があります。
- Extension Designer を開き、[サービス] タブをクリックします。
- 既存のサービスを選択してアーティファクトを展開するか、[DTP ワークフロー] カテゴリで新しいサービスを作成します。サービスとアーティファクトの編成に関する追加情報については、「サービスの使用 」を参照してください。
- 既存のサービスにアーティファクトを追加する場合は、新しい [フロー] タブを追加し (「フローの使用」を参照)、縦の三点メニューから [読み込み] を選択します。
- [Library] > [Workflows] > [Traceability Pack] > [Sending Test Data to External System] を選択し、[インポート] をクリックします。
- [フロー] タブの中をクリックしてサービスにノードをドロップし、[デプロイ] をクリックします。
詳細設定
<DTP_DATA_DIR>/conf ディレクトリにある ExternalAppsSettings.properties 構成ファイルを変更して、統合のデフォルトの動作を変更できます。すぐに利用できる DTP と codeBeamer の統合は、デフォルトまたは一般的に使用されるフィールドと作業アイテム タイプを使用するように構成されています。ただし、codeBeamer システムをカスタマイズしている場合は、次の設定を行って、DTP のデータをカスタム構成に合わせることができます。
codeBeamer.import.chunkSize | 1 回の実行で codeBeamer に送信するテスト ケースの結果の最大数を指定します。 デフォルト:
|
---|---|
codeBeamer.tracker.requirements | 要件を含む codeBeamer のトラッカーの名前を指定します。これにより、codeBeamer で構成したカスタムの要件トラッカーを DTP でのテスト結果に関連付けることができます。このトラッカーは、Traceability レポートに表示する要件も決定します。 デフォルト:
"Information" および "Folder" 要件タイプは DTP レポートで無視されます。 |
codeBeamer.tracker.test | テスト ケースを含む codeBeamer のトラッカーの名前を指定します。これにより、codeBeamer で構成したカスタムのテスト ケース トラッカーを DTP でのテスト結果に関連付けることができます。 デフォルト:
Parasoft は、テスト ケースと codeBeamer の要件との間に Verifies 関係を作成します。そのため、使用する codeBeamer 構成の特定のテスト ケースと要件トラッカーに対して Verifies オプションを必ず有効にしてください。 |
codeBeamer.workItemType.bug.status | DTP の違反エクスプローラーおよびテスト エクスプローラーで作業アイテムを作成するときに codeBeamer で作成されるバグのステータスを指定します。 デフォルト: |
DTP の違反エクスプローラーとテスト エクスプローラーから新しいバグを作成するときに codeBeamer で作成する作業アイテム タイプを指定します。これにより、codeBeamer で構成したカスタムのバグ トラッカーを DTP から作成された作業アイテムに関連付けることができます。 デフォルトでは、このプロパティは設定されていません。その結果、DTP で作成されたバグ作業アイテムは、codeBeamer のバグ作業アイテムに関連付けられます。 | |
codeBeamer.workItemType.task.status | DTP の違反エクスプローラーおよびテスト エクスプローラーで作業アイテムを作成するときに codeBeamer で作成されるタスクのステータスを指定します。 デフォルト: |
codeBeamer.workItemType.task | DTP の違反エクスプローラーとテスト エクスプローラーから新しいタスクを作成するときに codeBeamer で作成する作業アイテム タイプを指定します。これにより、codeBeamer で構成したカスタムのタスク トラッカーを DTP から作成された作業アイテムに関連付けることができます。 デフォルトでは、このプロパティは設定されていません。その結果、DTP で作成されたタスク作業アイテムは、codeBeamer のタスク作業アイテムに関連付けられます。 |
codeBeamerIssueUrl | DTP の違反エクスプローラーとテスト エクスプローラーで作成された作業アイテムを codeBeamer の作業アイテムにリンクするための URL テンプレートを指定します。 デフォルト:
|
使用
codeBeamer ALM との統合を設定した後、開発者、テスター、およびその他のユーザーは、統合によって実現される機能を活用できます。
CodeBeamer ALM でのバグとタスクの手動作成
テスト エクスプローラーと違反エクスプローラーを使用すると、ステータスに関係なく、テストと違反に対してそれぞれバグとタスクを作成できます。テスト エクスプローラーまたは違反エクスプローラーで codeBeamer アセットを作成する方法については、以下のセクションを参照してください。
- 違反エクスプローラーから codeBeamer ALM のバグとタスクを手動で作成する方法については、「サードパーティ システムでの課題の作成」を参照してください。
- テスト エクスプローラーから codeBeamer ALM のバグとタスクを手動で作成する方法については、「サードパーティ システムでの課題の作成」を参照してください。
CodeBeamer へのテスト データの送信
次の図は、codeBeamer ALM 環境に Parasoft DTP および Parasoft テスト実行ツールを統合するための自動インフラストラクチャの実装方法を示しています。
- codeBeamerトラッカーでアイテムを作成します。アイテムは、Parasoft ツールによって実行されるテストに関連付けられます。たとえば、要件 (システム要件仕様トラッカーのアイテム) やテスト ケース (テスト ケース トラッカーのアイテム) を作成できます。
- テスト ファイルで、
@test
または@req
アノテーションを使用して codeBeamer のテスト ケースまたは要件 ID を追加します。アノテーションの追加方法の詳細については、ご使用のツールのドキュメントを参照してください。@test <codeBeamer test ID>
アノテーションを使用して、テストを codeBeamer Test Cases トラッカーのアイテムに関連付けます。@req <codeBeamer System Requirements Specification ID>
アノテーションを使用して、テストを codeBeamer System Requirements Specifications トラッカーのアイテムに関連付けます。- URL などの codeBeamer インターフェイスのさまざまな部分から作業アイテム ID を取得できます。
- CI プロセスの一部としてテストを実行します。IDE からテストを手動で実行することもできます。
- テスト実行の一環として、Parasoft テスト実行ツールはフィルターとビルド ID でテスト結果をタグ付けし、データを DTP に送信します。DTP ダッシュボードに テスト ウィジェット を追加し、フィルターとビルド ID を設定することにより、DTP で結果を確認できます。開発者は、テスト実行データを DTP から IDE にダウンロードして、失敗したテストに対処できます。
Sending Test Data to External System フローをデプロイした場合 (「Sending Test Data to External System フローのデプロイ」を参照)、Data Collector が Parasoft ツールからデータを受信すると、単体テストと機能テストの結果が codeBeamer に自動的に送信されます。デフォルトでは、フローは Data Collector が受信した任意のプロジェクトの単体テストおよび機能テストの結果をフォワードしますが、特定のプロジェクトのデータだけを送信するようフローを設定できます。
また、DTP REST API エンドポイントに POST リクエストを手動で送信して、DTP データベースから codeBeamer に結果を送信することもできます。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>"
フィルターおよびビルド ID は、テスト エクスプローラーの URL で利用できます。
DTP は、
filterId
パラメーターとbuildId
パラメーターに一致するテスト結果を見つけ、そのデータを codeBeamer の作業アイテムに送信します。- DTP は、
@test <ID>
で結果を見つけると、codeBeamer で一致する ID を持つ Test Case トラッカーのアイテムを検索し、アイテムを更新します。codeBeamer に単体テスト ケース ID が存在しない場合、アクションは実行されません。 - DTP は、
@req <ID>
で結果を見つけると、codeBeamer で一致する ID を持つ System Requirements Specifications トラッカーのアイテムを検索します。一致が見つかった場合、要件に関連付けられたテスト ケースにテスト実行が追加されます。要件 ID に一致するテスト ケースがない場合は、テスト ケースが作成されてテスト実行が追加されます。 - external-app-sync.log ファイルも <DTP_INSTALL>/logs ディレクトリに書き込まれます。このログ ファイルには、DTP から codeBeamer へのテスト結果の送信に関する進捗情報が含まれています。
- DTP は、
DTP がレポートを処理し、結果を codeBeamer に送信した後、以下のような応答があります。
{ "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" ] }
特定の DTP プロジェクトの結果を送信する
Sending Test Data to External System フローを使用して単体テストおよび機能テストの結果を送信している場合、デフォルトでは、すべて DTP プロジェクトのデータが codeBeamer に送信されます。結果として、codeBeamer ID に一致するアノテーションを持つすべての DTP プロジェクトで収集されたテストを含むよう、作業アイテムが更新されます。ただし、特定のプロジェクトのデータだけを送信するよう、フローを設定することもできます。
- Extension Designer を開き、Sending Test Data がデプロイされたサービスを開きます。
- ワークスペースに新しいスイッチ ノードをドラッグします。
- "DataCollectorProcessedEvent" ノードと "Is dynamic analysis" ノードの間の接続線を選択して削除します。
- "DataCollectorProcessedEvent" ノードからスイッチ ノード、またスイッチ ノードから "Is dynamic analysis" ノードに新しい接続をドラッグします。
ノードをダブルクリックし、Property フィールドに次の文字列を指定します。
event.message.resultsSession.project
- 文字列フィールドに DTP プロジェクトの名前を指定します。
- (任意) ノードのわかりやすい名前を指定します。
- [終了] をクリックしてノードの設定を終了し、[デプロイ] をクリックします。
フローを実行すると、指定した DTP プロジェクトのテスト結果だけが codeBeamer に送信されます。
CodeBeamer での結果の表示
テスト データを送信した後、codeBeamer で結果を表示できます。次の画像は、codeBeamer の System Requirement Specifications トラッカーを示しています。このトラッカーには、いくつかのテスト ケースが含まれています。
個々のテスト ケースについて、テスト実行などの詳細情報をさらに確認できます。
テスト実行をクリックすると、テスト ファイル、ビルド ID、テスト作成者といった実行の詳細が表示されます。
Traceability Report の表示
ご使用のシステムに External System Traceability Report がデプロイされている場合 (「 Requirements Traceability Report の有効化」を参照)、ウィジェットをダッシュボードに追加して、要件からプロジェクトのテスト/静的解析/コードレビューまでのトレーサビリティをモニタリングできます。ウィジェットから、さらに詳細な情報を含むレポートを表示できます。
ウィジェットの追加と構成
DTP ダッシュボード追加されたウィジェットは、個別のトレーサビリティ カテゴリに表示されます。ウィジェットを追加する方法については「ウィジェットの追加」を参照してください。
以下の設定を行うことができます。
タイトル | デフォルトのタイトルの代わりにダッシュボードに表示する新しいタイトルを入力できます。 |
---|---|
フィルター | [ダッシュボード設定] を選択してダッシュボード フィルターを使用するか、ドロップダウン メニューからフィルターを選択します。フィルターの詳細については「フィルターの作成と管理」を参照してください。 |
ターゲット ビルド | テストとコード解析を実行したビルド ID に設定する必要があります。ダッシュボード設定で指定されたビルド、最新ビルド、またはドロップダウン メニューで選択したビルドを使用できます。「ダッシュボードの設定」も参照してください。 |
種類 | Pie ウィジェットのみ 。ドロップダウン メニューからテスト、違反、またはレビューを選択し、そのステータスを示す円グラフを表示します。完全な概要をダッシュボードに表示するには、各タイプに設定したウィジェットのインスタンスを追加します。 |
プロジェクト | ドロップダウン メニューから codeBeamer プロジェクトを選択します。 |
Requirements Widget
このウィジェットには、指定された codeBeamer プロジェクトの要件の数が表示されます。
ウィジェットをクリックすると、Requirement Traceability レポート が表示されます。
Test Coverage Widget
このウィジェットは、プロジェクトのすべての要件に対する、テストでカバーされた要件の割合を示します。
ウィジェットの中央をクリックすると、Requirement Traceability レポート が表示されます。
色付きのセグメントは、テストの対象となる要件を表しています。ウィジェットをクリックすると、With Tests カテゴリにフィルタリングされた Requirement Traceability レポート が表示されます。
Pie Widget
単体テスト、機能テスト、静的解析、およびピア レビューは、要件が適切かつ徹底的に実装されているかを検証するための一般的なアクティビティです。このウィジェットは、それらのソフトウェア品質アクティビティのコンテキストにおけるプロジェクト要件の全般的なステータスを表示します。品質アクティビティの種類 (テスト、静的解析違反、レビュー) ごとにウィジェットを追加して、プロジェクトの要件実装の進捗をモニタリングすることができます。
グラフ上のセクションにマウス ポインタを置くと、品質アクティビティ タイプのステータスについて詳細情報が表示されます。ウィジェットをクリックすると、選択したタイプでフィルタリングされた Requirement Traceability レポートが表示されます。
Requirements Implementation Status by Tests
Requirements Implementation Status by Violations
Requirements Implementation by Reviews
Requirements Traceability Report とは
このレポートは、codeBeamer の要件とそれに関連するデータを表示します。
以下の操作を行うことができます。
- レポートの [Files] 列と [Reviews] 列を非表示にする場合は、[Show files/reviews] オプションを無効にします。[Files] 列と [Reviews] 列にデータがあるのは、要件がソース ファイルにマッピングされている場合だけです (「Requirements Traceability Report の有効化」を参照)。この画面で [Files] 列および [Reviews] 列を無効にすると、関連するタブが Requirement Details レポート で非表示になります。
- codeBeamer ALM でトラッカーを確認するには、[Key] 列のリンクをクリックします。
- [Summary] 列または [Test] 列のリンクをクリックして、codeBeamer Requirement Details Report のトラッカーに関係するテスト関連情報を表示します。
- [Files] 列のリンクをクリックして、codeBeamer Requirement Details Report のトラッカーに関係する静的解析関連の情報を表示します。
- [Reviews] 列のリンクをクリックして、codeBeamer Requirement Details Report のトラッカーに関係する変更レビュー関連の情報を表示します。
Requirement Traceability Report by Type
codeBeamer Requirements - Pie ウィジェットのセクションをクリックすると、ウィジェットで選択した品質アクティビティ タイプだけを含むレポートが表示されます。ドロップダウン メニューを使ってタイプとステータスを切り替えることができます。[Show files/reviews] オプションを無効にして、レポートの [Files] 列と [Reviews] 列を非表示にすることもできます。[Files] 列と [Reviews] 列にデータがあるのは、要件がソース ファイルにマッピングされている場合だけです (「Requirements Traceability Report の有効化」を参照)。この画面で [Files] 列および [Reviews] 列を無効にすると、関連するタブが Requirement Details レポート で非表示になります。
Requirement Details Report とは
codeBeamer Requirement Details レポートは、codeBeamer の特定の要件に関連したファイル、静的解析の指摘事項、およびテストについての情報を表示します。このレポートは、codeBeamer Requirement Traceability レポートで要件をクリックすることで表示されます。
最初のタブには、作業アイテムを検証するために実行されたテストの結果が表示されます。
[View results in Test Explorer] リンクをクリックすると、作業アイテムに関連付けられたすべてのテストをテスト エクスプローラーで参照できます。
テーブルの個々のテスト名をクリックし、テスト エクスプローラーで個々のテストを参照することもできます。
2 番目のタブには、要件に関連付けられたファイルと、ファイルで検出された静的解析違反が表示されます。[違反] 列のリンクをクリックして、違反エクスプローラー で違反を確認できます。違反に関する詳細が表示されます。
このタブにデータがあるのは、要件がソース ファイルにマッピングされている場合だけです (「Requirements Traceability Report の有効化」を参照)。要件をソース ファイルにマッピングしなかった場合は、メインの Traceability レポート ページで [ファイル/レビューを表示] オプションを無効にし、詳細レポートを再読み込みすることで、このタブを非表示にできます。
ファイルに変更レビューまたはレビュー指摘事項が含まれる場合、それらは 3 番目のタブに表示されます。リンクをクリックすると、変更エクスプローラー で確認できます。
このタブにデータがあるのは、要件がソース ファイルにマッピングされている場合だけです (「Requirements Traceability Report の有効化」を参照)。要件をソース ファイルにマッピングしなかった場合は、メインの Traceability レポート ページで [ファイル/レビューを表示] オプションを無効にし、詳細レポートを再読み込みすることで、このタブを非表示にできます。