このセクションの内容:
Table of Contents | ||
---|---|---|
|
はじめに
Polarion ALM は、要件を管理するための一般的なブラウザー ベースのプラットフォームです。Parasoft DTP と Polarion ALM との統合は、以下の機能を実現します。
- Violations Explorer#Creating an Issue in a Third-party System から Polarion ALM で手動で不具合や課題を作成する機能。
- Test Explorer#Creating an Issue in Third-party Systems から Polarion ALM で手動で欠陥や課題を作成する機能
- Polarion の作業アイテムで Parasoft のテスト結果を送信、表示、および更新する機能 (「Sending Test Data to Polarion」を参照)。
- Polarion のトレーサビリティ レポートを使用してトレーサビリティを追跡することを計画しているユーザー向け。これを行うには、最初に Parasoft DTP から Polarion にテスト結果を送信する必要があります。
- テスト、静的解析結果、コード レビューを Polarion の要件から追跡する機能 (「Viewing the Traceability Report」を参照)。
- Parasoft DTP のトレーサビリティ レポートを使用してトレーサビリティを追跡することを計画しているユーザー向け。これを行うには、@req を使用して、Parasoft の自動テストを Polarion 要件に関連付けます。
要件
このセクションでは、Polarion で DTP を使用するための要件について説明します。
統合ファイル
内部テスト中に問題が検出されたため、DTP には Polarion との完全な統合に必要な JAR ファイルが同梱されていません。Polarion と統合して使用する場合は、Parasoft テクニカル サポート センター ([email protected]) に連絡して、統合を有効にするために必要な JAR ファイルを入手してください。JAR ファイルを <DTP_INSTALL>/DTP/tomcat/webapps/grs/WEB-INF/lib ディレクトリにコピーして、DTP を再起動してください (「Stopping DTP Services」および「Starting DTP Applications」を参照)。
<DTP_INSTALL>/DTP/tomcat/webapps/grs/WEB-INF/lib ディレクトリはアップグレード処理中に上書きされるため、DTP のアップグレード後に JAR ファイルを再度追加する必要があります。
Polarion にデータを送信するための要件
次の要件は、データを Polarion に送信 する場合にのみ適用されます。
- 次の Parasoft ツールが実行するテストがサポートされていること:
- C/C++test Professional、dotTEST、Jtest 10.4.3 以降
- Selenic 2020.1 以降
- SOAtest 9.10.8 以降
- 次のタイプの 1 つ以上を使用して、Polarion の作業アイテムを作成済みである必要があります。
- system requirement
- software requirement
- requirement
- user story
設定
この設定は、Parasoft 管理者が一度だけ行う必要があります。開発者、テスター、およびその他の DTP エンドユーザーは、Parasoft ツールを Polarion ALM と連携して使用する方法について、「Usage 」を参照してください。
DTP と Polarion ALM サーバーの接続
- 設定ドロップダウン メニュー (歯車のアイコン) から [Report Center 設定] を選択します。
- [External System] を選択して [設定の編集] をクリックし、[システム タイプ] ドロップダウンメニューから Polarion を選択します。
- [Enabled] オプションを有効化します。
- [名前] フィールドに Polarion のインスタンス名を入力します。名前は必須ですが、接続設定に影響したり、他のインターフェイスで表示されたりすることはありません。
- [アプリケーション URL] フィールドに Polarion サーバーの URL を入力します。URL には、プロトコル、ホスト、およびポート番号を含める必要があります。パスまたはパラメーターは含めないでください。
- [表示 URL] フィールドは、Polarion システムへのリンクが Web ブラウザーに表示されるときに Parasoft DTP ページに表示される URL を定義します。通常、これは上記のアプリケーション URL フィールドと同じである必要があります。ただし、たとえば、リバース プロキシ環境で作業していて、Parasoft DTP を使用するユーザーのローカル Web ブラウザーから Polarion へのリンクが Parasoft DTP サーバーとは異なる場合は、違うことがあります。
- [Username] および [Password/API Tokens] フィールドにログイン認証情報を入力します。ログインには、[プロジェクトの関連付け] セクションで指定された Polarion プロジェクトで課題を作成するのに十分な権限が必要です。
- [接続のテスト] をクリックして設定を確認し、[確認] をクリックします。
Parasoft プロジェクトと Polarion プロジェクトの関連付け
Parasoft プロジェクトと Jira プロジェクトを関連付けると、違反エクスプローラーまたはテスト エクスプローラー ビューから欠陥を作成し、Polarion の適切なプロジェクトにリンクすることができます。Sending Test Data to External System フロー を使用する場合、関連付けも重要です。DTP の複数のプロジェクトを 1 つの Polarion プロジェクトと関連付けることはできますが、同じ DTP プロジェクトを複数の Polarion プロジェクトと関連付けることはできません。
- [プロジェクトの関連付けを作成] をクリックし、[DTP プロジェクト] ドロップダウン メニューからプロジェクトを選択します。
- [外部プロジェクト] フィールドに Polarion プロジェクトの名前を入力して [Create] をクリックし、関連付けを保存します。
プロジェクトの関連付けを削除するには、ゴミ箱のアイコンをクリックします。プロジェクトの関連付けを削除しても、Polarion の欠陥へのリンクは DTP のエクスプローラー ビューで削除されません。新しい関連付けを作成すると、違反と Polarion の課題との既存リンクが再び有効になります。
DTP と Polarion プロジェクトの既存の関連付けの設定を変更できます。
- 鉛筆アイコンをクリックし、ドロップダウン メニューから別の DTP プロジェクトを選択するか、[外部プロジェクト] フィールドに別の Polarion プロジェクトの名前を指定します。
- [保存] をクリックします。
...
Polarion に保存された要件、および Parasoft ツール (C/C++test、dotTEST、Jtest、SOAtest) から DTP に送信されたテスト データ、静的解析データ、ビルド レビュー データとの間のトレーサビリティを実証するのに役立つウィジェットとレポートを生成するように、DTP を構成できます。
Traceability Report にコード レビューと静的解析情報を含める場合は、ソース コード ファイルを Polarion の作業アイテムに関連付ける必要があります。この機能を有効化する方法については「Associating Requirements with Files」を参照してください。
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 フローを環境にデプロイします。アーティファクトを展開する前に、「Connecting DTP to Polarion ALM Server」で説明されているように、DTP が Polarion に接続されていることを確認します。
Traceability Pack をインストールする
最初のステップは、 Traceability Pack をインストールすることです。このアーティファクトは、トレーサビリティを可能にする構成ファイルとアセットの集合です。
- 設定メニュー (歯車のアイコン) から [Extension Designer] を選択します。
- [構成] タブをクリックしてアーティファクト マネージャーを開きます。
- [アーティファクトの追加] をクリックし、traceability-pack-<version>.zip アーカイブを参照します (「Downloading and Installing Artifacts」も参照)。
- [インストール] をクリックすると、トレーサビリティを有効にするためのアセットと構成ファイルの集合がインストールされます。
External System Traceability Report のデプロイ
Traceability Pack をインストールした後、External System Traceability Report をデプロイします。
...
External System Traceability Report をデプロイすると、Report Center にドリルダウン レポートと新しいウィジェットが追加されます。ウィジェットを追加してレポートを参照する方法については「Viewing the Traceability Report」を参照してください。
...
<DTP_DATA_DIR>/conf ディレクトリにある ExternalSystemSettings.properties 構成ファイルを変更して、統合のデフォルトの動作を変更できます。すぐに利用できる DTP と Polarion の統合は、デフォルトまたは一般的に使用されるフィールドと作業アイテム タイプを使用するように構成されています。ただし、Polarion システムをカスタマイズしている場合は、次の設定を行って、DTP のデータをカスタム構成に合わせることができます。
Scroll Table Layout | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
...
Parasoft で要求の役割を果たす Polarion 作業アイテム タイプをカンマ区切りリストで指定します。作業アイテムは、Traceability Report でも使用されます。
Polarion システムで作業アイテム ID にアクセスするには、Polarion UI で [Polarion Administration] > [Work Items] > [Types for the IDs] を選択します。
デフォルト:
polarion.workItemType.requirementIds=softwarerequirement,systemrequirement,requirement,userstory
...
Parasoft でテストの役割を果たす Polarion 作業アイテム タイプを指定します。
Polarion システムで作業アイテム ID にアクセスするには、Polarion UI で [Polarion Administration] > [Work Items] > [Types for the IDs] を選択します。
デフォルト:
polarion.workItemType.testId=unittestcase
...
デフォルトでは、このプロパティは設定されていません。その結果、DTP で作成された課題作業アイテムは、Polarion の課題作業アイテムに関連付けられます。
...
デフォルトでは、このプロパティは設定されていません。その結果、DTP で作成されたタスク作業アイテムは、Polarion のタスク作業アイテムに関連付けられます。
...
DTP の違反エクスプローラーとテスト エクスプローラーで作成された作業アイテムを Polarion の作業アイテムにリンクするための URL テンプレートを指定します。
デフォルト:
polarionIssueUrl=<POLARION_URL>/polarion/redirect/project/<PROJECT>/workitem?id=<ID>
...
Polarion システムで設定されているハイパーリンクの役割を指定します。ハイパーリンクの役割は、DTP の Violations Explorer および Test Explorer から作業アイテムを作成するときに使用されます 。
ハイパーリンクの役割にアクセスするには、Polarion で Polarion Administration > Enumerations > hyperlink-role-enum.xml を選択します。
デフォルト:
polarion.hyperlinkRole=ref_ext
...
polarion.requirementStatus.verified
...
DTP から送信されるテストと Polarion の要件との関係を指定します。現在の関係の構成を表示するには、Polarion で Polarion Administration > Enumerations > workitem-link-role-enum.xml を選択します。
デフォルト:
polarion.requirementStatus.verified=verifies
...
polarion.testCase.workItemLinkRole=
...
"WorkItem-Test" 関係タイプとして扱う必要があるロールのIDを指定します。現在の関係の構成を表示するには、Polarion で Polarion Administration > Enumerations > workitem-link-role-enum.xml を確認します。値は、"," で区切った ID のリストである必要があります。フィールドが空の場合、すべての役割タイプが受け入れられます。
Parasoft C/C++ および SOAtest の [要件] ビューで使用され、Polarion 要件に関連付けられた Polarion テストケースを提示します。
デフォルト:
polarion.testCase.workItemLinkRole=depends_on,verifies,relates_to
ベースのプラットフォームです。一方、Parasoft テスト ツールと DTP は、ソフトウェア プロジェクトで品質上の問題を検出したりテストを実行したりする包括的な自動テスト ツールを提供します。 Polarion ALM を Parasoft DTP と統合することで、2 つの重要なシステム要素間のトレーサビリティを強化し、プロジェクトのワークフローを強化できます。
- Polarion ALM は、要件、欠陥、テストの定義を担当します。
- Parasoft テストツールは、自動テストを実行し、ソフトウェアの欠陥や違反を検出します。Parasoft DTP は、レポートと解析のダッシュボードです。
Parasoft ツールを Polarion ALM と統合すると、以下の機能が提供されます。
Parasoft DTP の違反エクスプローラーおよびテスト エクスプローラーからの Polarion ALM での欠陥の作成
Parasoft テスト ツールが静的解析違反を検出した場合、または自動テストの失敗が DTP でレポートされた場合、Parasoft DTP インターフェイスから直接、統合された Polarion ALM で欠陥レポートを簡単に作成できます。「Polarion ALM での欠陥と課題の手動作成」を参照してください。
Parasoft テスト結果の Polarion ALM 要件およびテスト定義への送信
ソフトウェア要件は Polarion ALM で定義され、Parasoft ツールと DTP はこれらの要件の実装をテストするために使用されます。Parasoft DTP から Polarion ALM にテスト結果を送信することで、Polarion ALM のトレーサビリティ レポートを使用して、Polarion ALM のこれらの要件と Parasoft DTP のテスト結果の間のトレーサビリティを追跡できます。「Sending Test Data to Polarion ALM and Viewing Results」を参照してください。
Anchor Monitoring Monitoring
Parasoft DTP レポートのテスト結果に対する Polarion ALM 要件のトレーサビリティの監視
Monitoring | |
Monitoring |
このユースケースは前述の機能と似ています。Polarion ALM 要件から Parasoft テスト結果までのトレーサビリティを監視することを目的とします。しかし、違いはレポートのソースにあります。前述の機能では Polarion ALM でのレポートが容易になりましたが、この機能では Parasoft DTP のレポートを利用します。「Parasoft to Polarion ALM Traceability Reports」を参照してください。
設定
これらの機能を利用するには、事前にいくつかの設定が必要です。「Configuring Integration with Polarion ALM」を参照してください。
さらに、前述の「Parasoft DTP レポートのテスト結果に対する Polarion ALM 要件のトレーサビリティの監視」機能を使用する場合は、いくつかの追加構成が必要です。「Configuring Parasoft to Polarion ALM Traceability」を参照してください。
...
Polarion ALM との統合を設定した後、開発者、テスター、およびその他のユーザーは、統合によって実現される機能を活用できます。
...
テスト エクスプローラー ビューと違反エクスプローラー ビューを使用すると、ステータスに関係なく、テストと違反に対してそれぞれ課題と欠陥を作成できます。テスト エクスプローラーまたは違反エクスプローラーで Polarion アセットを作成する方法については、以下のセクションを参照してください。
- 違反エクスプローラーから Polarion ALM の欠陥と課題を手動で作成する方法については、「サードパーティ システムでの課題の作成」を参照してください。
- テスト エクスプローラーから Polarion ALM の欠陥と課題を手動で作成する方法については、「サードパーティ システムでの課題の作成」を参照してください。
...
次の図は、Polarion ALM 環境に Parasoft DTP および Parasoft テスト実行ツールを統合するための自動インフラストラクチャの実装方法を示しています。
- Parasoft C/C++test、dotTEST、Jtest によって実行されるテストに関連付けられる作業アイテムを Polarion ALM で作成します。
- テスト ファイルで、
@test
または@req
アノテーションを使用して Polarion のテスト ケースまたは要件 ID を追加します。アノテーションの追加の詳細については、C/C++test、dotTEST、または Jtest のドキュメントを参照してください。@test <Polarion unit test case ID>
アノテーションを使用して、テストを Polarion の単体テスト ケースと関連付けます。@req <Polarion software/system requirement ID>
アノテーションを使用して、テストを Polarion のソフトウェア要件またはシステム要件と関連付けます。- Polarion の単体テスト ケースまたは 要件 ID は、URL などのいくつかの Polarion インターフェイスで利用できます。
- CI プロセスの一部としてテストを実行します。C/C++test デスクトップからテストを手動で実行することもできます。
- テスト実行の一環として、C/C++test はフィルターとビルド ID でテスト結果をタグ付けし、データを DTP に送信します。DTP ダッシュボードに Test Widgets を追加し、フィルターとビルド ID を設定することにより、DTP で結果を確認できます。C/C++test 開発者は、テスト実行データを DTP から IDE にダウンロードして、失敗したテストに対処できます。
Sending Test Data to External System フローをデプロイした場合 (「Deploying the Sending Test Data to External System Flow」を参照)、Data Collector が Parasoft ツールからデータを受信すると、単体テストと機能テストの結果が Polarion に自動的に送信されます。デフォルトでは、フローは Data Collector が受信した任意のプロジェクトの単体テストおよび機能テストの結果をフォワードしますが、特定のプロジェクトのデータだけを送信するようフローを設定できます (「Sending Results from a Specific DTP Project」を参照)。
また、DTP REST API エンドポイントに POST リクエストを手動で送信して、DTP データベースから Polarion に結果を送信することもできます。API 呼び出しの DTP フィルターとビルド ID を URL パラメーターとして渡します。No Format 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
パラメーターに一致するテスト結果を見つけ、そのデータを Polarion の単体テスト ケースまたは要件に送信します。次の応答を受け取るはずです。DTP は、
@test <ID>
で結果を見つけると、Polarion で一致する ID を持つ単体テスト ケースを検索し、アイテムを更新します。Polarion に単体テスト ケース ID が存在しない場合、アクションは実行されません。DTP は、
@req <ID>
で結果を見つけると、Polarionで一致する ID を持つ要件を検索し、関連する子単体テスト ケースを更新します。要件 ID に一致する単体テスト ケースが存在しない場合、単体テスト ケースが作成されます。要件 ID が見つからない場合も、単体テスト ケースが作成されます。- external-app-sync.log ファイルも <DTP_INSTALL>/logs ディレクトリに書き込まれます。このログ ファイルには、DTP から Polarion へのテスト結果の送信に関する進捗情報が含まれています。
DTP がレポートを処理し、結果を Polarion に送信した後、以下のような応答があります。
Code Block | ||
---|---|---|
| ||
{
"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 プロジェクトのデータが Polarion に送信されます。結果として、Polarion ID に一致するアノテーションを含むすべての DTP プロジェクトで収集されたテストを含むよう、作業アイテムが更新されます。ただし、特定のプロジェクトのデータだけを送信するよう、フローを設定することもできます。
- Extension Designer を開き、Sending Test Data がデプロイされたサービスを開きます。
- ワークスペースに新しいスイッチ ノードをドラッグします。
- "DataCollectorProcessedEvent" ノードと "Is dynamic analysis" ノードの間の接続線を選択して削除します。
- "DataCollectorProcessedEvent" ノードからスイッチ ノード、またスイッチ ノードから "Is dynamic analysis" ノードに新しい接続をドラッグします。
ノードをダブルクリックし、Property フィールドに次の文字列を指定します。
No Format event.message.resultsSession.project
- 文字列フィールドに DTP プロジェクトの名前を指定します。
- (任意) ノードのわかりやすい名前を指定します。
- [終了] をクリックしてノードの設定を終了し、[デプロイ] をクリックします。
フローを実行すると、指定した DTP プロジェクトのテスト結果だけが Polarion に送信されます。
...
テスト データが Polarion に正常に送信されると、Polarion で結果を表示できるようになります。
Polarion レポートをさらに展開して、作成者、場所、実行時間など、テストに関する詳細情報を表示できます。Polarion レポートの詳細については、Polarion のドキュメント を参照してください。
...
ご使用のシステムに External System Traceability Report がデプロイされている場合 (「Enabling the Requirements Traceability Report」を参照)、ウィジェットをダッシュボードに追加して、要件からプロジェクトのテスト/静的解析/コードレビューまでのトレーサビリティをモニタリングできます。ウィジェットから、さらに詳細な情報を含むレポートを表示できます。
ウィジェットの追加と構成
DTP ダッシュボード追加されたウィジェットは、個別のトレーサビリティ カテゴリに表示されます。ウィジェットを追加する方法については「Adding Widgets」を参照してください。
以下の設定を行うことができます。
Scroll Table Layout | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
...
Requirements Widget
このウィジェットには、指定された Polarion プロジェクトの要件の数が表示されます。
ウィジェットをクリックすると、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
...
このレポートは、Polarion プロジェクトの要件とそれに関連するデータを表示します。
以下の操作を行うことができます。
- レポートの [Files] 列と [Reviews] 列を非表示にする場合は、[Show files/reviews] オプションを無効にします。[Files] 列と [Reviews] 列にデータがあるのは、要件がソース ファイルにマッピングされている場合だけです (「Enabling the Requirements Traceability Report」を参照)。この画面で [Files] 列および [Reviews] 列を無効にすると、関連するタブが Requirement Details レポート で非表示になります。
- Polarion で要件を確認するには、[Key] 列のリンクをクリックします。
- [Summary] 列または [Test] 列のリンクをクリックして、 Requirement Details Report の要件に関係するテスト関連情報を表示します。
- [Files] 列のリンクをクリックして、 Requirement Details Report の要件に関係する静的解析関連の情報を表示します。
- [Reviews] 列のリンクをクリックして、 Requirement Details Report の要件に関係する変更レビュー関連の情報を表示します。
Requirement Traceability Report by Type
Requirements - Pie ウィジェットのセクションをクリックすると、ウィジェットで選択した品質アクティビティ タイプだけを含むレポートが表示されます。ドロップダウン メニューを使ってタイプとステータスを切り替えることができます。[Show files/reviews] オプションを無効にして、レポートの [Files] 列と [Reviews] 列を非表示にすることもできます。[Files] 列と [Reviews] 列にデータがあるのは、要件がソース ファイルにマッピングされている場合だけです (「Enabling the Requirements Traceability Report」を参照)。この画面で [Files] 列および [Reviews] 列を無効にすると、関連するタブが Requirement Details レポート で非表示になります。
Requirement Details Report とは
Requirement Details レポートは、Polarion の特定の要件に関連したファイル、静的解析の指摘事項、およびテストについての情報を表示します。このレポートは、メインの Requirement Traceability レポートで要件をクリックすることで表示されます。
最初のタブには、作業アイテムを検証するために実行されたテストの結果が表示されます。
[View results in Test Explorer] リンクをクリックすると、要件に関連付けられたすべてのテストを Test Explorer で参照できます。
テーブルの個々のテスト名をクリックし、テスト エクスプローラーで個々のテストを参照することもできます。
2 番目のタブには、要件に関連付けられたファイルと、ファイルで検出された静的解析違反が表示されます。[違反] 列のリンクをクリックして、Violations Explorer で違反を確認できます。違反に関する詳細が表示されます。
このタブにデータがあるのは、要件がソース ファイルにマッピングされている場合だけです (「Enabling the Requirements Traceability Report」を参照)。要件をソース ファイルにマッピングしなかった場合は、メインの Traceability レポート ページで [ファイル/レビューを表示] オプションを無効にし、詳細レポートを再読み込みすることで、このタブを非表示にできます。
ファイルに変更レビューまたはレビュー指摘事項が含まれる場合、それらは 3 番目のタブに表示されます。リンクをクリックすると、Change Explorer で確認できます。
このタブにデータがあるのは、要件がソース ファイルにマッピングされている場合だけです (「Enabling the Requirements Traceability Report」を参照)。要件をソース ファイルにマッピングしなかった場合は、メインの Traceability レポート ページで [ファイル/レビューを表示] オプションを無効にし、詳細レポートを再読み込みすることで、このタブを非表示にできます。