概要
Test Optimization は、現在選択されているサイト () では利用できません。
Test Optimization は、GitHub などの外部パートナーだけでなく、開発者向けの他の Datadog 製品とも連携し、以下のような機能を通して開発者のワークフローを効率化します。
これらの機能はすべての Test Optimization 利用者が利用でき、Datadog GitHub 連携を必須とするものではありません。
GitHub のプルリクエストにおけるテストサマリー
Datadog は GitHub と連携し、テスト結果のサマリーをプルリクエストのコメントに直接表示します。各サマリーにはテスト実行の概要、不安定性の発生状況、失敗したテストのエラーメッセージ、パフォーマンスのリグレッション、コードカバレッジの変更点などが含まれます。
この情報により、開発者はテスト結果について即時にフィードバックを得られ、プルリクエストの画面から離れることなく失敗テストや不安定テストのデバッグが可能になります。
この連携は、`github.com` 上でホストされているテストサービスにのみ対応しています。
テストサマリーの有効化
以下の手順で、プルリクエストでテストサマリーを有効にすることができます。
- GitHub インテグレーションをインストールします。
- GitHub インテグレーションタイルの Configuration タブに移動し、+ Create GitHub App をクリックします。
- アプリケーションにプルリクエストの読み取り権限と書き込み権限を与えます。
- Test Optimization Settings ページに移動します。
- テストサマリーを有効にしたいリポジトリを選択します。
- GitHub Comments をトグルでオンにします。
コメントは、テストが実行される前にオープンされ、かつ有効になっているリポジトリで少なくとも 1 回テストが実行されたプルリクエストでのみ表示されます。
GitHub の課題を作成し、開く
Test Optimization を使用すると、テストに関連するコンテキスト情報や、より効率的なデバッグワークフローを可能にする Datadog へのディープリンクを含んだプリセット済みの GitHub Issue を作成・オープンできます。Test Optimization から直接 Issue を作成することで、テストの失敗や不安定テストを追跡し、責任範囲を明確に保つのに役立ちます。
アプリ内エントリーポイント
Test Optimization 内では、以下の 3 つの場所からプリセット済みの GitHub Issue を作成できます。
コミット概要
コミットの概要ページは、特定のブランチから、または特定のテスト内から発見することができます。
Commit Overview ページでは、Failed Tests
または New Flaky Tests
テーブルの任意の行をクリックし、Open issue in GitHub を選択します。
ブランチ概要
このページでは、Flaky Tests テーブルの任意の行をクリックし、Open issue in GitHub を選択します。
テスト詳細画面
特定のテスト実行画面内で、Actions ボタンをクリックし、Open issue in GitHub を選択します。
また、テストの詳細情報を他の場所に貼り付けるための Markdown 形式の Issue 説明をコピーすることもできます。Markdown の説明には、テスト実行リンク、サービス、ブランチ、コミット、作成者、エラーなどの情報が含まれます。
GitHub のサンプル課題
以下は、あらかじめ内容が入力された GitHub Issue のサンプル例です:
Jira の課題を作成する
Case Management を利用すると、テストに関する重要なコンテキストや、より効率的なデバッグを行うための Datadog へのディープリンクを含む、あらかじめ内容が入力された Jira 課題を作成・オープンできます。Test Optimization から直接課題を作成することで、テストの失敗や不安定テストを追跡し、責任の所在を明確にするのに役立ちます。
Jira の課題ステータスを更新すると、Case Management 上のステータスも更新され、常に最新のケース状況が反映されます。
アプリ内エントリーポイント
セットアップした Jira 連携が完了した後、Test Optimization 内の 3つの場所からケースを作成できます:
また、Case Management から Shift + J
を押して、手動で Jira 課題を作成することも可能です。
コミット概要
コミットの概要ページは、特定のブランチから、または特定のテスト内から発見することができます。
Commit Overview ページでは、Failed Tests
または New Flaky Tests
テーブルの任意の行をクリックし、Create case を選択します。
ブランチ概要
このページでは、Flaky Tests テーブルの任意の行をクリックし、Create case を選択します。
テスト実行画
特定のテスト実行画面内で、Actions ボタンをクリックし、Create case を選択します。
Jira 連携の設定についての詳細は、Case Management のドキュメントを参照してください。
GitHub と IDE でテストを開く
アプリ内エントリーポイント
Datadog でテストが失敗した、あるいは不安定になったことを検出すると、そのテストを GitHub や IDE で開いてすぐに修正するオプションがあります。
テスト実行の Overview タブにある Error Message セクションで View Code ボタンをクリックすると、Visual Studio Code、IntelliJ、または GitHub でそのテストの関連コード行を表示できます。
ドロップダウンのオプション順序は、テストが書かれた言語によって変わります:
- Java ベースのテストでは IntelliJ が優先される
- JavaScript や Python ベースのテストでは Visual Studio Code が優先される
GitHub でソースコードを表示する
オプションとして、GitHub 連携を設定し、失敗または不安定テストのソースコードを GitHub で開くこともできます。
テスト実行の Overview タブにある Source Code セクションで View on GitHub ボタンをクリックすると、そのテストの関連コード行を GitHub で表示できます。
IDE プラグインのインストール
IDE でテストを閲覧するには、IDE プラグインまたは拡張機能が必要です。
- VS Code 拡張機能がインストールされていない場合は、View in VS Code をクリックすると VS Code 内で直接拡張機能のインストール画面が開きます。
- IntelliJ プラグインがインストールされていない場合は、View in IntelliJ をクリックすると拡張機能のインストールが可能です。互換性のある Datadog のバージョンは Plugin Versions ページに記載されています。
参考資料