CTP が手動テストに関連するカバレッジ情報を収集するには、デプロイ済みのアプリケーション カバレッジ エージェントのいずれかを使用するように環境内のコンポーネントを設定する必要があります。このセクションでは、Parasoft dotTEST または Jtest (推奨) を使用するか、あるいはプロジェクトのソース コードにアクセスできない場合はアプリケーション バイナリを分析するために使用できる コマンド ライン カバレッジ ツール (SOAtest または CTP に同梱) を使用して、テスト対象アプリケーション (AUT) のカバレッジ エージェントが既に構成されていることを前提としています。まだ構成していない場合は「テスト対象アプリケーションのカバレッジ設定」を参照してください。
カバレッジエージェントを CTP コンポーネントに接続する
環境内のコンポーネントがカバレッジエージェントに接続されているかどうかは簡単に確認できます。Environment Manager を開き、環境ダイアグラムを編集します。[カバレッジ エージェント] タブをクリックすると、コンポーネント名別に整理された便利な表表示されます。この表には、該当する各コンポーネントについて、カバレッジ エージェント、ビルド ID、および DTP プロジェクト情報が含まれています。
カバレッジ エージェントに接続する必要があるコンポーネントが接続されていない場合は、[ダイアグラム] タブに戻って接続を構成します。
- コンポーネントの新規コンポーネント インスタンスを作成するか、既存のインスタンスを編集します。詳細については「コンポーネント インスタンス設定の変更」または「コンポーネント インスタンス設定の変更」を参照してください。
- カバレッジ エージェントに接続されているコンポーネント インスタンスでは、Name や Description の一部としてカバレッジ エージェントを含めることを推奨します。
- [Coverage] をクリックし、以下を入力します。
- Agent URL: テスト対象のアプリケーションとカバレッジ エージェントがホストされる URL を指定します。エージェントのプロトコル (HTTP/HTTPS) とポート番号を含めます。
- カバレッジエージェントへの接続をテストするには、[Test Connection] をクリックします。
- DTP Project: この値は、静的および動的カバレッジ ファイルを収集するときに dotTEST または Jtest に設定された dtp.project 値と一致する必要があります。複数のコンポーネントを同じ DTP プロジェクトにパブリッシュできます。CTP は、REST API で提供されるセッション タグとコンポーネント名に基づいて、カバレッジを DTP にパブリッシュするときに、各コンポーネントに固有のセッション タグを生成し、DTP の同じプロジェクトにパブリッシュされた複数のコンポーネントのカバレッジ データが確実にマージされるようにします。
- Filter: このカバレッジ エージェントのフィルターを指定します。フィルターは DTP サーバーによって提供され、DTP 内のテストに関連付けられます。これは、テスト影響度分析の影響を受けるテストを特定するのに役立ちます。テキストを入力すると、フィールドがオートコンプリートされます。ここからフィルターを作成することはできません。使用できないフィルターがある場合は、DTP に移動してそこで作成します。
- Build ID: カバレッジ結果を関連付けるビルド ID に設定します。SOAtest のカバレッジ結果を、同じアプリケーションの他のタイプのテスト (単体テストや手動テストなど) の結果とマージする場合は、すべて同じビルド ID を使用する必要があります。ここで設定するビルド ID は、静的および動的カバレッジ ファイルを収集してカバレッジ データをアップロードする際に、dotTEST または Jtest に設定されたビルド ID と一致する必要があります。
- Coverage images: DTP でカバレッジ イメージを作成するために使用されるタグのセットを指定します。カバレッジ イメージは、同じビルド ID の実行からのカバレッジ データを集約するための一意の識別子です。複数のエントリはセミコロン ( ; ) で区切ります。詳細については、Parasoft DTP ユーザー ガイドを参照してください。
- Agent URL: テスト対象のアプリケーションとカバレッジ エージェントがホストされる URL を指定します。エージェントのプロトコル (HTTP/HTTPS) とポート番号を含めます。
- [終了] をクリックします。
マルチユーザー モードでのカバレッジ エージェント
複数のテスターが同時に Web アプリケーションで作業する場合は、カバレッジエージェントをマルチユーザーモードで実行することをお勧めします。環境内のコンポーネントがシングルユーザーモードで実行されるカバレッジエージェントに設定されている場合、その環境では一度に 1 つのテストしか実行できません。カバレッジエージェントをマルチユーザーモードで実行する方法については、使用しているカバレッジエージェントによって異なります。
- Jtest: agent.properties で
jtest.agent.enableMultiuserCoverageとjtest.agent.autoloadMultiuserLibsの両方が有効になっていることを確認してください。- 注意:
jtest.agent.enableMultiuserCoverageを有効にすると、agent.jar ディレクトリから jtest-otel-ext.jar と opentelemetry-javaagent.jar が自動的にロードされます。これら 3 つはすべてカバレッジ エージェントのダウンロードに含まれており、カバレッジ エージェントをインストールするときに同じディレクトリにデプロイする必要があります。
- 注意:
- dotTEST: コマンド
agent_client.exe -multiuserを使用してエージェントを起動します。
カバレッジ エージェントの設定の詳細については、「アプリケーション カバレッジ」を参照してください。
使用しているカバレッジエージェントに関係なく、各テスターのブラウザで以下のHTTPヘッダーを挿入するように設定する必要があります (<USER> はテスターの CTP ユーザー名です)。baggage: test-operator-id=<USER>
このヘッダーを挿入しないと、カバレッジデータは取得されません。ブラウザー拡張機能を使用してこのヘッダーを挿入できます。
影響を受ける手動テストを追跡するためのカバレッジ エージェントの設定
コード変更によって影響を受けた手動テストについて CTP でレポートを作成するには、テスト対象アプリケーションの場所をカバレッジ エージェントに設定する必要があります。これにより、アプリケーションに変更が加えられた際に、どのクラスが変更されたかを判断できるようになります。設定方法は、使用しているカバレッジ エージェントによって異なります。
- Jtest: agent.properties ファイルで
jtest.agent.appLocationIncludesと (該当する場合)jtest.agent.appLocationExcludesを有効にし、適切に構成します。Jtest カバレッジ エージェントのパラメーターの詳細については、「Jtest カバレッジ エージェントの設定」を参照してください。 - dotTEST: 以下の引数を指定して agent_client.exe を実行します。agent_client.exe の実行の詳細については、「dotTEST カバレッジ エージェント」を参照してください。
-appLocationInclude <PATH_TO_APPLICATION>: 必須。手動でテストするアプリケーションのアプリケーション ファイルの場所を指定します。必要に応じて、複数の引数を使用して複数の場所を指定します (例えば、アプリケーション ファイルがすべて同じディレクトリに存在しない場合など)。-appLocationExclude <PATH_TO_APPLICATION>: オプションですが、推奨されます。-appLocationInclude引数で指定されたディレクトリ内にあるファイルのうち、コード変更の影響を受ける手動テストを判断する際に考慮する必要がないファイルの場所を指定します。これらのファイルを除外することで、ファイルの変更を分析するのにかかる時間を大幅に短縮できます。複数の場所を指定するには、複数の引数を使用します。

