Azure DevOps サービス |Azure DevOps Server |Azure DevOps Server 2022
Visual Studio 2022 |Visual Studio 2019 |Visual Studio 2017 |Visual Studio 2015
自動テストをテスト ケースに関連付けることで、CI/CD パイプラインとのより優れたトレーサビリティと統合を提供することで、テスト プロセスを強化できます。 この記事では、自動テストをテスト ケースに関連付けるのが有益なシナリオと、それを効果的に行う方法について説明します。
前提 条件
| カテゴリ | 必要条件 |
|---|---|
| プロジェクトアクセス | プロジェクトメンバー。 |
| アクセスレベル | - テスト関連の作業項目を表示したり、テスト ケースを実行したりするには、少なくとも Basic アクセスです。
利害関係者 アクセス権を持つユーザーは、テスト 計画にアクセスできなくなります。 - Basic + Test Plans アクセス レベル、または次のいずれかのVisual Studio サブスクリプションのテスト関連機能を実行するには: - エンタープライズ - テストプロフェッショナル - MSDN プラットフォーム |
| アクセス許可 |
エリア パスのアクセス許可: - テスト 計画、テスト スイート、テスト ケース、またはその他のテスト ベースの作業項目の種類を追加または変更するには: このノードセットの作業項目 を [許可] に設定して編集します。 - ビルドやテストの設定などのテスト 計画のプロパティを変更するには:[許可] に設定されたテスト 計画を管理します。 - テスト スイートを作成および削除するには、テスト スイートからテスト ケースを追加および削除するか、テスト スイートに関連付けられているテスト構成を変更します。 テスト スイート を [許可] に設定して管理します。 プロジェクトレベルの権限: - テストの実行を表示、作成、または削除するには、テストの実行の表示、テスト実行の作成、およびテスト実行の削除を許可に設定します。 - テスト構成またはテスト環境を管理するには: テスト構成を管理 し、 テスト環境 を [許可] に設定して管理します。 - テスト ベースの作業項目に新しいタグを追加するには:[許可] に設定されたタグ定義を作成します。 - テスト ベースの作業項目を完全に削除するには:[許可] に設定された作業項目を完全に削除します。 |
詳細については、「手動テストアクセスとアクセス許可を参照してください。
テスト プロジェクトとビルド パイプラインを作成する
テスト プロジェクトとビルド パイプラインを作成するには、次の手順を実行します。
- 自動テストを含むテスト プロジェクトを作成します。 詳細については、 サポートされているテストの種類を参照してください。
- テスト プロジェクトをAzure DevOpsに確認します。
- プロジェクトのビルド パイプラインを作成し、自動テストが含まれていることを確認します。 詳細については、 XAML ビルドをまだ使用している場合の相違点を参照してください。
自動テストをVisual Studioに関連付ける
次のシナリオでは、Visual Studioを使用して自動テストをテスト ケースに関連付けすることを検討してください。
手動テスト ケースの自動化: 後で決定した手動テスト ケースを作成した場合は、自動化の候補として適していますが、テスト計画の一部として実行する必要があります。 これらのテストを CI/CD パイプラインで実行するには、Visual Studio Test タスクの設定でテスト 計画またはテスト スイートを選択します。 テスト計画 Web ポータルから自動 テスト を実行することもできます。 XAML ビルドを使用している場合は、Microsoft Test Manager を使用して、これらの自動テストを
実行できます。 エンドツーエンドの追跡可能性を有効にする: テスト ケースが要件またはユーザー ストーリーにリンクされている場合は、テスト実行の結果を使用して、それらの要件の品質を確立できます。
自動テストをVisual Studioのテスト ケースに関連付けるには、次の手順を実行します。
Visual Studio Enterprise または Professional 2017 以降のバージョンでソリューションを開きます。
テスト ケースの作業項目の識別子がわからない場合は、
Azure Test Plans でテスト ケースを検索するか、Work ハブで作業項目の クエリを見つけます。 テスト ケースの作業項目の識別子がわかっている場合:
Visual Studio 2017 以降のバージョンを使用している場合は、次の手順を実行してテストを関連付けます。
- Test Explorer ウィンドウが表示されない場合は、Test | Windows メニューから開いてください。
- テストが テスト エクスプローラー に表示されない場合は、ソリューションをビルドします。
- テスト エクスプローラーで、関連付けるテスト メソッドを選択し、[テスト ケースに関連付ける] を選択します。
- 表示されたダイアログで、テスト ケースの識別子を入力し、[関連付けの追加] を選択してから、[保存] を選択します。
このダイアログには、現在選択されているテスト メソッドに関連付けられているテスト ケースの一覧が表示されます。 1 つのテスト ケースに複数のテスト メソッドを関連付けることはできませんが、1 つのテスト メソッドを複数のテスト ケースに関連付けることはできます。
XAML ビルドではなく、Azure DevOpsでビルドおよびリリース サービスを使用している場合は、Visual Studio Test タスクを使用して、ビルド パイプラインとリリース パイプラインで関連するテストを実行できます。 XAML ビルドを使用していない限り、Microsoft Test Manager を使用してオンデマンドでテストを実行することはできません。
テスト ケース内のパラメーターは、テスト ケースに関連付けられた自動テストでは使用されません。 これらのパラメーターを使用するテスト ケースのイテレーションは、手動テスト専用です。
詳細については、次の記事を参照してください。
自動テストをAzure DevOpsに関連付ける
ビルド パイプラインからテストを関連付ける
[パイプライン] に移動し、自動テストが実行されたパイプラインを選択します。
テストが実行されたビルドを選択します。
[ テスト ] タブで、手動テスト ケースとリンクする自動テストを探します。
テストを選択し、テストケースの関連付けをクリックします。
自動テストに関連付ける手動テスト ケースを見つけて、[ 関連付け] をクリックします。
作業項目にテストを関連付ける
- テスト ケースを開き、[関連する オートメーション ] タブに移動します。
- を選択し、を参照します。
- サイド パネルから、パイプラインと、テストが以前に実行された特定の実行を選択します。
- 作業項目に関連付けるテストを選択し、[ テストの関連付け] を選択します。
自動テストを対応するテスト ケースに関連付けた後は、Azure テスト計画タスクを使用してパイプラインの一部として実行できます。
自動テストの関連付けに関する FAQ
よく寄せられる質問 (FAQ) を次に示します。
Q: どのような種類のテストがサポートされていますか?
A: テストの種類ごとに次の機能と制限があります。
| フレームワーク | *Visual Studioでの関連付け | Azure DevOpsでの関連付け |
|---|---|---|
| コード化された UI テスト | サポートされています | サポートされています |
| セレン | サポートされています | サポートされています |
| MSTest v1/v2 | サポートされています | サポートされています |
| NUnit | サポートされています | サポートされています |
| xUnit | サポートされています | サポートされています |
| Python (PyTest) | サポートされていません | サポートされています |
| Java (Maven と Gradle) | サポートされていません | サポートされています |
* Visual Studio 15.9 Preview 2 以降でサポートされます。
.NET Core フレームワークを使用するテストは、Visual Studio 15.9 Preview 2 以降を使用する場合、テストケースの作業項目に関連付けることができます。 .NETコア テストを実行します。 適切なターゲット フレームワークは、.runsettings ファイルで指定する必要があります。
Q: テスト ケースで "Automation Status" フィールドを使用するにはどうすればよいですか?
テスト ケース作業項目の [Automation Status] フィールドには、テスト ケースが自動テスト メソッドにリンクされているかどうかが反映されます。 このフィールドは 3 つの値 (Not Automated、Planned、Automated) をサポートしていますが、これらの値の可用性は、テスト ケースにオートメーション メソッドが関連付けられているかどうかによって異なります。
- 自動化されていない/計画済み: テスト ケースにテスト メソッドが関連付けられていない場合にのみ表示されます。
- 自動: テスト ケースにテスト メソッドが関連付けられている場合にのみ表示されます。
既定値がテスト ケースの状態と一致しない場合は、テスト ケースの作業項目の種類にカスタム の選択リスト フィールド を作成し、組織のニーズに合った値を定義できます。
Q: Azure DevOpsの関連付けに、GitHub リポジトリのテストを使用できますか。
A: VSTest タスクを使用してAzure Pipelinesで自動テストを実行するか、PublishTestResults タスクでテスト結果を報告する限り、自動テストは、Azure DevOpsのユーザー エクスペリエンスを介して、テスト ケースへの関連付けに使用できます。 テストは、関連付けに使用できるようになる前に少なくとも 1 回実行する必要があることに注意してください。
Q: XAML ビルドをまだ使用している場合の違いは何ですか?
A: Azure Pipelinesで XAML ビルドを使用している場合は、Lab 環境 を使用して、ビルドDeploy-Test ワークフローに関連付けられたテストを実行できます。 Microsoft Test Manager と Lab 環境を使用してテストを実行することもできます。
Q: Visual Studioで開く作業項目を構成できますか。
A: はい。 Visual Studioで、テスト作業項目をWebブラウザーの既定のAzure Pipelines UIではなく開く場合は、Visual Studioの[ツール | オプション]メニューから、[作業項目 | 全般]設定を変更してください。