Azure Test Plans とは
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Azure Test Plans には、開発プロセス全体を通じて品質とコラボレーションを促進するための強力なツールが用意されています。 このブラウザー ベースのテスト管理ソリューションは、計画的な手動テスト、ユーザー受け入れテスト、探索的テスト、利害関係者のフィードバックをサポートします。
注意
この記事は、Azure DevOps Services および Azure DevOps Server 2020 以降のバージョンに適用されます。 ほとんどの情報は以前のオンプレミス バージョンで有効ですが、イメージには最新バージョンの例のみが表示されます。 また、Azure DevOps Server 2020 のリリースにより、ユーザー インターフェイスが大幅に変更されました。 新しいインターフェイスとサポートされている機能の概要については、「navigate Test Plans」を参照してください。
Azure Test Plansのしくみ
ブラウザー ベースのツール (テスト 計画、進行状況レポート、パラメーター、構成、実行、テスト ツール) と DevOps 統合機能を組み合わせて使用すると、Azure Test Plansは次のテスト目標をサポートします。
-
- 計画された手動テストを整理する: テスト担当者とテスト リードを指定して、テストをテスト計画とテスト スイートに編成します。
- ユーザー受け入れテストを実施する: ユーザー受け入れテスト担当者を指定して、提供された値が顧客の要件を満たしていることを確認し、エンジニアリング チームによって作成されたテスト成果物を再利用します。
- 探索的テストの実行: 開発者、テスト担当者、UX チーム、製品所有者などに、テスト 計画やテスト スイートを使用せずにソフトウェア システムを探索してもらいます。
- 利害関係者のフィードバックを収集する: マーケティング部門や営業部門のユーザーなど、開発チームの外部の利害関係者と連携してテストを実行します。
テストの自動化: Azure Test Plans と Azure Pipelines を統合して、CI/CD 内のテストをサポートします。 テスト 計画とテスト ケースをビルドまたはリリース パイプラインに関連付けます。 テスト結果をキャプチャして発行するパイプライン タスクを追加します。 組み込みの進行状況レポートとパイプライン テスト レポートを使用して、テスト結果を確認します。
追跡可能性の確保: テスト ケースとテスト スイートを、エンド ツー エンドの追跡可能性のためのユーザー ストーリー、機能、または要件にリンクします。 テストと欠陥をテスト対象の要件とビルドに自動的にリンクします。 ボードからテストを追加して実行するか、大規模なチームのテスト 計画ハブを使用します。 パイプラインの結果と [要件] ウィジェットを使用して、要件のテストを追跡します。
レポートと分析の追跡: 構成可能な追跡グラフ、ダッシュボード用のテスト固有のウィジェット、進行状況レポート、パイプライン テスト結果レポート、Analytics サービスなどの組み込みレポートを使用して、テスト結果と進行状況を監視します。
Note
読み込みとパフォーマンスのテスト: Azure DevOps クラウドベースのロード テスト サービスは非推奨ですが、Azure Load Testing を使用できます。 Azure Load Testing はフル マネージドのロード テスト サービスであり、既存の Apache JMeter スクリプトを使用して高スケールの負荷を生成できます。 詳しくは、Azure Load Testing の概要ページを参照してください。 Azure DevOps ロード テストの廃止の詳細については、「 Visual Studio でのロード テスト機能の変更」および「Azure DevOps でのクラウド ロード テスト」を参照してください。
主な利点
Azure Test Plansには、ソフトウェア開発チームに次の利点があります。
任意のプラットフォームでテストする: Test Plans Web ポータルを使用すると、サポートされているすべてのブラウザーを使用して、すべての手動テスト機能にアクセスできます。 これにより、ユーザーが任意のプラットフォーム上のすべての主要なブラウザーからアクセスできる、使いやすいブラウザー ベースのインターフェイスを使用して手動テストを作成して実行できます。
豊富な診断データ収集: Web ベースのテスト ランナーとテスト ランナー クライアントを使用すると、手動テスト中に 豊富な診断データを収集 できます。 このデータには、スクリーンショット、画像アクション ログ、画面記録、コード カバレッジ、IntelliTrace トレース、テスト対象アプリのテスト影響データが含まれます。 このデータは、テスト中に作成したすべてのバグに自動的に含まれるため、開発者は問題を簡単に再現できます。
エンドツーエンドの追跡可能性: Azure DevOps は、作業項目を他のオブジェクトにリンク して、要件、ビルド、テスト、バグのエンドツーエンドの追跡可能性を提供します。 ユーザーはボード上のカードから要件の品質を追跡できます。 テスト中に作成されたバグは、テスト中の要件とビルドに自動的にリンクされるため、要件またはビルドの品質を追跡するのに役立ちます。
統合分析: Analytics サービスは、Power BI を使用して、組み込みのレポート、構成可能なダッシュボード ウィジェット、およびカスタマイズ可能なレポートにフィードするデータを提供します。 データは、手動テストと自動テストの両方のテスト計画の進行状況と傾向を追跡します。 テスト分析では、ビルドとリリースのテスト データをほぼリアルタイムで可視化できます。 Teams は、このデータに対処してテスト資料を改善し、正常なパイプラインを維持するのに役立ちます。
拡張可能なプラットフォーム。 既に知っているツールとテクノロジを、 Azure DevOps との統合と拡張に最適な開発ツールと組み合わせることができます。 テスト プラットフォームで使用できる REST API とコントリビューション モデルを使用して、テスト管理ライフサイクルに必要なエクスペリエンスを提供する拡張機能を作成します。
サポートされているシナリオとアクセス要件
Azure DevOps Web ポータル機能へのアクセスは、ユーザーに割り当てられたアクセス レベルによって管理されます。 アクセス レベルの概要に関するページで説明されているように、3 つのメインアクセス レベルは、利害関係者、Basic、および Basic+Test プランです。 次の表は、Azure Test Plansに関連付けられているタスクを実行するために必要なアクセス レベルを示しています。 アクセス レベルに加えて、実行するアクセス許可が必要な機能を選択します。 詳細については、「 Manual テストアクセスとアクセス許可を参照してください。
シナリオとタスク
Stakeholder
Basic
基本 +Test Plans
テスト計画
- テスト計画とテスト スイートを作成する
- テスト 計画の実行設定を管理する
- 構成を管理する
✔️
テスト実行
- テスト ランナーを使用して任意のプラットフォーム (Windows、Linux、Mac) でテストを実行する
✔️
✔️
テストとフィードバック拡張機能を使用して探索的テストを実行する
✔️
✔️
✔️
テストの分析と確認
- 優先度、構成などのさまざまなピボットを含むグラフを作成して、テストの進行状況を追跡する
- テスト結果を参照する
- テスト計画とテスト スイートをエクスポートしてレビューする
- ユーザー受け入れテスト – テストを割り当て、電子メールで招待する
✔️
✔️
手動テストと探索的テスト
手動テストと探索的テストをサポートするために、Azure Test Plansはテスト固有の作業項目の種類を使用してテストを計画および作成します。 さらに、テストの実行をサポートする 2 つのテスト ツールが提供されます。 テスト 計画、パラメーター、および構成ハブには、テスト項目、その設定、構成を効率的に作成および管理するためのツールが用意されています。 テスト スイートは動的 (要件ベースのスイートとクエリ ベースのスイート) にすることができ、開発中の関連する要件の品質を理解するのに役立ち、回帰テストをカバーするのに役立つ静的な場合があります。
テスト固有の作業項目の種類
作業項目の種類 (Test Plans、テスト スイート、テスト ケース、共有ステップ、および共有パラメーター) では、要件の追跡と多くのテスト ケース間でのテスト ステップとデータの共有をサポートするために、いくつかの明示的なリンクがサポートされています。 テスト ケースは、手動または自動化として割り当てることができます。 これらの各テスト項目の説明については、「 テスト オブジェクトと用語」を参照してください。
Azure DevOps では、テスト結果、テストの実行、テスト ケースの関係を次のように理解できます。
- テスト ケース: 特定の機能を検証するように設計された特定のシナリオまたは一連の手順。
- テストの実行: 1 つ以上のテスト ケースが実行されるインスタンス。 各テスト実行には、複数のテスト ケースを含めることができます。
- テスト結果: テスト実行の結果。 テスト実行内の各テスト ケースには、成功したか失敗したかを示す独自のテスト結果があります。
Note
Azure DevOps Server 2020 以降のバージョンでは、パイプラインにテスト タスクを追加することで、自動テストを実行できます。 テスト タスクを使用する場合、テスト 計画、テスト ケース、テスト スイートを定義する必要はありません。
テスト 計画とテスト スイートを定義する
テスト 計画とテスト スイートは、[テスト プラン] ハブ から作成して管理します。 1 つ以上のテスト スイート (静的、要件ベース、またはクエリベース) をテスト プランに追加します。 テスト計画とテスト スイートをエクスポートしてチームと共有します。 方法については、「 テスト 計画とテスト スイートを作成 する」および「テスト 計画、テスト スイート、テスト ケースをコピーまたは複製する」を参照してください。
テスト ケースを使用してテストを作成する
手動テスト ケースを定義するには、テスト ステップと、必要に応じて参照するテスト データを定義します。 テスト スイートは、1 つ以上のテスト ケースで構成されます。 テスト スイート内でテスト ケースを共有できます。 テスト ケースを定義するためのグリッド ビューでは、コピー、貼り付け、挿入、および削除の操作がサポートされています。 テストを実行するために、1 人または複数のテスト担当者をすばやく割り当てます。 テスト スイート全体でテスト結果とテスト ケースへの参照を表示します。 方法については、「 テスト ケースを作成する」を参照してください。
各テスト ケース内で、期待される結果を含む一連のテスト ステップを指定します。 必要に応じて、 共有ステップ または 共有パラメーターを追加できます。 追跡可能性を高めるために、テスト ケースをテストするユーザー ストーリー、機能、またはバグにリンクします。
共有パラメーターを管理する
Parameters ハブを使用して、テスト ケース間で共有されるパラメーターを定義および管理します。 共有パラメーターは、異なるテスト データを使用して手動テストを複数回繰り返すサポートを提供します。 たとえば、ユーザーが異なる数量の製品をショッピング カートに追加できる場合は、数量 200 が動作し、数量が 1 であることを確認します。
テスト構成と変数を管理する
構成ハブを使用すると、チームはテスト計画によって参照されるテスト構成と変数を定義、確認、管理できます。 テスト構成では、さまざまなオペレーティング システム、Web ブラウザー、バージョンでアプリケーションをテストするためのサポートが提供されます。 共有パラメーターと同様に、テスト構成は複数のテスト 計画間で共有できます。
テスト実行ツールとテスト ツール
次のツールを使用すると、開発者、テスト担当者、利害関係者は、テストを開始し、テストを実行し、テストにリンクされているコードの欠陥を自動的にログに記録する豊富なデータをキャプチャできます。 デスクトップまたは Web アプリ間でテストを実行して、アプリケーションをテストします。
- テスト ランナー: Web アプリケーションをテストするためのブラウザー ベースのツールと、テスト プラン ハブから起動して手動テストを実行するデスクトップ アプリケーションを テスト するためのデスクトップ クライアント バージョン。 テスト ランナーでは、画像アクション ログ、ビデオ記録、コード カバレッジなど、テストの実行中に豊富なデータ収集がサポートされます。また、ユーザーはバグを作成し、テストの状態をマークすることもできます。
- テストおよびフィードバック拡張機能: Chrome、Microsoft Edge、または Firefox ブラウザーからアクセスする探索的テストをサポートするための無料の拡張機能。 この拡張機能は、画像やビデオを介して探索され、口頭またはタイプで書かれたコメントを入力するアプリケーションとの対話をキャプチャします。 フィードバック応答作業項目の種類に情報がキャプチャされ、応答データの追跡に役立ちます。
テスト実行機能
指定されたツールを使用して、次のタスクを実行できます。
タスク | テスト プラン ハブ | テスト ランナー | テストとフィードバック拡張機能 |
---|---|---|---|
テストを一括マークする | ✔️ | ||
テストまたはテストステップに合格または失敗する | ✔️ | ✔️ | |
実行中のテストに対するインライン変更 | ✔️ | ✔️ | |
テストの一時停止と再開 | ✔️ | ✔️ | |
テストの実行中にバグを報告する | ✔️ | ✔️ | |
テスト実行中にスクリーンショット、イメージ アクション ログ、画面記録をキャプチャする | ✔️ | ✔️ | |
テスト実行中に既存のバグを更新する | ✔️ | ✔️ | |
バグを確認する | ✔️ | ✔️ | |
テスト実行のビルドを割り当てる | ✔️ | ||
テスト設定を割り当てる | ✔️ | ||
テストの実行を確認する | ✔️ |
テストの実行
[テスト プラン] ハブの [実行] タブから、チーム メンバーは、テスト スイートに対して定義された 1 つ以上のテスト ケースのテスト実行を開始できます。 Web またはデスクトップ アプリケーションの テスト ランナー の実行が選択できます。 必要に応じて、チーム メンバーは [オプションを指定して実行 ] を選択して、手動テスト用に他のサポートされているクライアントを選択するか、自動テスト用のビルドを選択できます。 詳細については、「手動テストの実行」を参照してください。
テスト ランナー
テスト ランナーは 、Web アプリケーションとデスクトップ アプリケーションのテストを実行します。 テスト ステップとテスト結果を合格または失敗としてマークし、テスト時にシステム情報、イメージ アクション ログ、画面記録、画面キャプチャなどの診断データを収集します。 テスト中に提出されたバグには、キャプチャされたすべての診断データが自動的に含まれ、開発者が問題を再現するのに役立ちます。 詳細については、「 Web アプリのテストの実行 デスクトップ アプリの実行テスト 実行」を参照してください。
ユーザー受け入れテスト
ユーザー受け入れテスト (UAT) は、チームが顧客から要求された価値を確実に提供するのに役立ちます。 UAT テスト計画とスイートを作成し、複数のテスト担当者を招待してこれらのテストを実行し、軽量のグラフを使用してテストの進行状況と結果を監視できます。 方法については、「 ユーザー受け入れテスト」を参照してください。
テストとフィードバック拡張機能を使用した探索的テスト
Test とフィードバックの拡張機能は、Web アプリをいつでも、どこでもテストするために使用できる単純なブラウザー ベースの拡張機能であり、チーム内のすべてのユーザーが使用するのに十分なシンプルです。 これにより、問題を見つけるのにより多くの時間を費やし、それらを提出する時間を減らすことで、生産性を向上させることができます。
利害関係者のフィードバック
優れた品質のソフトウェアを開発するために不可欠なマーケティングチームや営業チームなど、開発チーム外の利害関係者からのフィードバックを求める必要があります。 開発者は、ユーザー ストーリーと機能に関するフィードバックを要求できます。 利害関係者は、ブラウザー ベースのテストおよびフィードバック拡張機能を使用してフィードバック要求に応答できます。コメントの評価と送信だけでなく、豊富な診断データをキャプチャし、バグやタスクを直接提出することもできます。 詳細については、「 利害関係者のフィードバックを要求する」 と 「利害関係者のフィードバックを提供する」を参照してください。
自動テスト
自動テストは、Azure Pipelines 内でテストを実行することで容易になります。 テスト分析では、ビルドとリリースのテスト データをほぼリアルタイムで可視化できます。 これは、反復的で影響の大きい品質の問題を特定することで、パイプラインの効率を向上させるのに役立ちます。
Azure Test Plansでは、次の方法で自動テストがサポートされます。
テスト 計画またはテスト ケースをビルドまたはリリース パイプラインに関連付ける
パイプライン定義内でテスト有効化タスクを指定します。 Azure Pipelines には、包括的なテスト レポートと分析エクスペリエンスをサポートする次のタスクなど、いくつかのタスクが用意されています。
- テスト結果の発行タスク: テスト結果を Azure Pipelines に発行するために使用します。
- Visual Studio テスト タスク: Visual Studio テスト ランナーを使用して単体テストと機能テスト (Selenium、Appium、コード化された UI テストなど) を実行するために使用します。
- .NET Core CLI タスク: dotnet アプリケーションのビルド、テスト、パッケージ化、または発行に使用します。
その他のタスクについては、「 テスト結果の発行タスク」を参照してください。
組み込みのレポートと構成可能なダッシュボード ウィジェットを提供して、パイプライン テストの結果を表示します。
テスト結果と関連するテスト データを Analytics サービスに収集します。
追跡可能性
Azure Test Plansでは、バグと要件をテスト ケースとテスト スイートにリンクすることがサポートされています。 さらに、次の Web ポータルでは、テスト関連のツールで追跡可能性がサポートされています。
- テスト ケースにリンクされている項目の表示: テスト ケースがリンクしているテスト プラン、テスト スイート、要件、バグを表示します。
- ボードからテストを追加して実行する: ボードのユーザー ストーリー、機能、またはバグからのテスト ケースの定義をサポートする Azure Boards 機能。 また、テスト ランナーまたはテスト & フィードバック拡張機能を起動して、テストを実行したり、探索的テストを実行したりできます。
- 要件品質ウィジェット: ビルドまたはリリース パイプラインから継続的に品質を追跡するために使用される構成可能なウィジェット。 ウィジェットには、要件と、その要件に対して実行された最新のテスト結果の間のマッピングが表示されます。 要件の追跡可能性に関する分析情報が提供されます。 たとえば、品質を満たしていない要件、テストされていない要件などです。
テスト ケースにリンクされているアイテムを表示する
テスト 計画ハブから、テスト ケースにリンクされているテスト スイート、要件、バグを表示して開くことができます。 [ テスト スイート ] タブには、テスト ケースを参照するテスト 計画とプロジェクトも示されます。 [ 要件 ] タブには、要件カテゴリに属するテスト ケースにリンクされている作業項目が一覧表示されます。 さらに、リンクの種類で テスト/ テストを使用してテスト ケースにリンクする項目を一覧表示する直接リンク クエリを作成できます。 詳細については、「 テスト ケースの作成 と 直接リンクを使用して依存関係を表示するを参照してください。
ボードからテストを追加して実行する
Azure Boards ボードから、ユーザー ストーリーまたは機能からテストを追加し、テスト ケースをユーザー ストーリーまたは機能に自動的にリンクできます。 ボードから直接テスト ケースの表示、実行、操作を行い、カードからステータスを段階的に直接監視できます。 詳細については、「 インライン テストの追加、実行、更新」を参照してください。
要件品質ウィジェット
[要件品質] ウィジェットには、スコープ内のすべての要件の一覧と、テストの 合格率 と 失敗した テストの数が表示されます。 [失敗したテスト数] を選択すると、選択したビルドまたはリリースの [ テスト ] タブが開きます。 ウィジェットは、関連するテストなしで要件を追跡するのにも役立ちます。 詳細については、「 Requirements traceability」を参照してください。
レポートおよび分析
レポートと分析をサポートするために、Azure Test Plansでは、テスト追跡グラフ、テスト実行ハブ、組み込みのパイプライン テスト レポート、ダッシュボード ウィジェット、および Analytics サービスに格納されているテスト データがサポートされています。
- 構成可能なテスト グラフ: テスト追跡グラフを作成することで、テスト 計画の作成と実行アクティビティに関する分析情報を得ることができます。
- 進行状況レポート: 1 つまたはテスト 計画またはテスト スイートの進行状況を追跡します。
- テストの実行: 手動および自動のテスト実行の結果を確認します。
- ダッシュボード ウィジェット: 選択したビルドまたはリリースに基づいてテスト結果を表示する構成可能なウィジェット。 ウィジェットには、 デプロイ状態 ウィジェットと テスト結果傾向 (詳細) ウィジェットが含まれます。
- Test Analytics: 組み込みのパイプライン レポートから詳細な分析情報を取得するか、Analytics サービスにクエリを実行してカスタム レポートを作成します。
構成可能なテスト グラフ
任意の種類のグラフを使用して手動テスト結果を追跡するように軽量のグラフをすばやく構成し、これらの結果を簡単に分析できるようにグラフをダッシュボードにピン留めします。 アイテム保持ポリシーを選択して、手動テストの結果を保持する期間を制御します。 詳細については、「 テスト状態の追跡」を参照してください。
進行状況レポート
進行状況レポート ハブを使用すると、チームは複数のテスト計画またはテスト スイートの進行状況を追跡できます。 このレポートは、次の質問に答えるのに役立ちます。
- どのくらいのテストが完了していますか?
- 合格したテスト、失敗したテスト、またはブロックされたテストの数。
- テストは時間内に完了する可能性がありますか?
- 1 日あたりの実行率は何ですか?
- 注意が必要なテスト領域はどれですか?
テストの実行
Runs ハブには、手動と自動の両方のすべてのテスト実行を含むテスト実行の結果が表示されます。
Note
Runs ハブは、Azure DevOps Server 2020 以降のバージョンで使用できます。 テスト実行データの格納と管理に使用される Analytics サービスを有効にする必要があります。 サービスの詳細については、「 Analytics サービスとは」を参照してください。
特定の実行を選択して、テスト実行の概要を表示します。
[デプロイ ステータス]
デプロイ状態ウィジェット構成可能ウィジェットには、最近のビルドセットの複数の環境にわたるデプロイ状態とテスト合格率の組み合わせビューが表示されます。 ウィジェットを構成するには、ビルド パイプライン、ブランチ、およびリンクされたリリース パイプラインを指定します。 リリース内の複数の環境にわたるテストの概要を表示するために、ウィジェットには、各環境と対応するテスト合格率のマトリックス ビューが用意されています。
ビルドの概要にカーソルを合わせると、詳細 (具体的には、成功したテストと失敗したテストの数) を表示できます。
テスト結果の傾向 (詳細)
テスト結果の傾向 (高度) ウィジェットでは、複数のビルドとリリースのテスト データをほぼリアルタイムで可視化できます。 ウィジェットには、選択したパイプラインのテスト結果の傾向が表示されます。 これを使用して、テスト、合格率、テスト期間の 1 日あたりのカウントを追跡できます。 テスト品質を経時的に追跡し、テスト資料を改善することは、正常な DevOps パイプラインを維持するための鍵です。 ウィジェットでは、1 つ以上のビルド パイプラインまたはリリース パイプラインの高度なメトリックの追跡がサポートされています。 ウィジェットでは、結果、スタック メトリックなどによるテスト結果のフィルター処理も可能です。 詳細については、「 テスト結果の傾向 (詳細) ウィジェットを構成するを参照してください。
テスト分析
組み込みのテストとテストでサポートされているウィジェットは、Analytics サービスからデータを派生させます。 Analytics サービスは Azure DevOps のレポート プラットフォームであり、 Analytics と Tests タブと Pipelines ハブから使用できるドリルダウン レポートをサポートしています。 テストの失敗ドリルダウン レポートには、合格したテストと失敗したテストの概要が表示されます。 詳細については、「 Test Analytics」を参照してください。
さらに、Analytics サービスにクエリを実行してカスタム レポートを作成することもできます。 詳細については、「 OData クエリを使用したサンプル レポートの概要を参照してください。
次のステップ
関連記事
- Test Plans 内を移動する
- テスト 計画、テスト スイート、テスト ケースをコピーまたは複製する
- 自動テストとテス トケースを関連付ける
- フィードバックの要求と提供について
- サービス間の統合とコラボレーションの概要
- パイプライン テストについて