こんにちは。テクマトリックスの中田です。
今回業務でAzure Test Plansを触る機会があったので、簡単にまとめてみたいと思います。Azure Test Plansは、Azure DevOpsに含まれるサービスのひとつで、テストケースやテスト結果を管理する機能を持っています。
目次
Azure DevOpsとは
Azure DevOpsは以下の5つのサービスを含む総称です。
Pipelines | CI/CD機能 |
Boards | タスク管理、かんばん |
Artifacts | Maven、npm、NuGet等のパッケージ管理 |
Repos | Gitリポジトリ |
Test Plans | テストケースやテスト結果の管理 |
上記サービスの詳細は、以下のページをご覧ください。
https://azure.microsoft.com/ja-jp/services/devops
Azure Test Plansによるテスト実施の流れ
Azure Test Plansを使ってテストを実施するときの流れについて説明します。
- テストケースの作成や変更 → Boardsを利用
- テスト結果の記録 → Test Plansを利用
- テスト結果の集計やグラフ表示 → Test Plansを利用
テストケースの作成や変更
テストケースの作成や変更はBoards経由で行います。テストスイートと呼ばれるアイテムを新規追加して、中身にテストケースを追加していきます。
Work itemsから作成したテストケースを選択し、手順の詳細を追記していきます。
なお、テストケースを元々Excel等で管理していた場合は、CSVファイルを使った一括インポートも可能です。
テスト結果の記録
テスト結果に関してはTest Plans画面から記録します。Runnerと呼ばれる画面を起動して実際のテスト結果を記録していきます。
以下の特長があります。
- 手順ごとのOK/NGが記録できる
- 動画がその場で記録+保存できる
- 不具合情報(Boardsのチケット)も作成できる
Runnerで実行したテスト結果についてはTest runs上で確認します。実行単位をTest runsと呼び、例えば1回で3件のテスト結果を記録した場合は、その3件が1つのTest runsとなります。下記の1行が1つのTest runsを表します。クリックするとRunnerで記録した詳細が確認できます。
テスト結果の集計やグラフ表示
実行結果レポートはグラフで表示することができます。グラフは、種類、縦横軸の値、ソート、色の指定、などかなり自由なカスタマイズが可能です。
また、Rest APIにも対応しているため、TestPlans上にある情報を取得して加工したい、別のツール上に反映したい、というニーズにも応えられます。
テスト自動化ツールとの連携
VisualStudio等で管理しているテスト自動化コードをテストケースと関連付けすることで、ビルド/実行されたテスト結果をTestPlansに反映することができます。
例えば、以下のようなテスト自動化ツールが関連付けに対応しています。
- コード化された UI テスト (CUITs)
- Selenium
- MSTest v1を利用した単体テストのコード
- MSTest v2を利用したNUnit/xUnitフレームワーク
まとめ
いわゆるテスト管理ツールとしての機能が網羅されており、Azure DevOpsのいち機能としての役割は充分であると感じました。テスト結果の記録の際、その場で動画キャプチャを撮ってそのまま添付できるのが非常に便利です。また、グラフのカスタマイズを柔軟にできるため、特にレポートを重視する日本人に喜ぶ人が多いのではないかという印象です。
一方で、テスト管理に特化したツールと比べてしまうと使い勝手や機能面でやや物足りなさを感じます。UIはほぼ英語なことに加え、ケース管理はBoardsを経由して行う必要があるなど直感的に利用方法が分かりにくい部分があります。
総じてAzure Test Plansは単一のサービスとしてというよりAzure DevOpsのサービスすべて含めた総合力で勝負しているといった印象でした。
おまけ
弊社ではテスト管理ツールTestRailを販売しています。今回紹介したTestPlans(Azure DevOps)のように他の種々のサービスは付随していませんが、その分テストケースや結果の管理に特化しているため、ユーザービリティが高く使いやすいツールとなっています。もしテスト管理ツールにご興味があればこちらも併せてご検討ください。