テストプランとテストスイートの作成
テスト管理の基本構造として、テストプランとテストスイートを作成していきます。
テストプランの作成
Azure DevOpsのプロジェクトのダッシュボードの左側メニューから「Test Plans」を選択し、画面右上の「+ New Test Plan」を選択します。
テストプラン作成画面では以下を設定します。
- Name:テストプランの名前(例:「Sprint 1 テスト計画」)
- Area Path:テストプランが属するエリアパス(Azure DevOpsにおける、作業や機能領域をチーム単位で分類する階層的なパス)
- Iteration:関連付けるイテレーション(スプリント)
設定が完了したら「Create」を選択してテストプランを作成します。
テストスイートの作成
テストプラン内にテストスイートを作成してテストケースを整理します。テストスイートには3種類あります。
静的テストスイート(Static)
テストケースを手動でフォルダ分けするようにグループ化する、最もシンプルなスイートです。
要件ベーステストスイート(Requirement-based)
Azure Boards のワークアイテム(プロダクトバックログ項目やユーザーストーリー)と直接連動するスイートです。「どの要件のテストが完了したか」というトレーサビリティを確保するのに最適です。
クエリベーステストスイート(Query-based)
指定したクエリ条件(例:「優先度が1のテストのみ」など)に合致するテストケースを自動で収集するスイートです。
テストプラン名の横の「...」メニューから「New Suite」を選択し、静的テストスイートを作成します。
スイート名として「ログイン機能テスト」と入力します。
続けて、要件ベーステストスイート(Requirement based suite)も作成しましょう。こちらはクエリを実行して、対象となるワークアイテムを選択するだけで、要件に紐付いたテスト管理環境が構築されます。
これで、テストプラン配下にテストを管理するための箱(テストスイート)が準備できました。
テストケースの作成
テストスイートにテストケースを追加していきます。
テストケースの追加
左側のツリーから「ログイン機能テスト」スイートを選択し、画面中央の「New Test Case」をクリックします。
テストケースの編集画面が開くので、タイトルに「正常なログイン操作の確認」と入力します。画面下部の「Steps」セクションには、検証手順である「Action(操作)」と「Expected Result(期待される結果)」を対にして記述します。今回は以下のステップを追加してみましょう。
ステップ1
- Action:ログインページにアクセスする
- Expected Result:ログインフォームが表示される
ステップ2
- Action:ユーザー名とパスワードを入力する
- Expected Result:入力した内容がフォームに表示される
ステップ3
- Action:ログインボタンを選択する
- Expected Result:ダッシュボード画面に遷移する
入力後、「Save & Close」をクリックして保存します。あわせて「無効なパスワードでのログイン失敗」や「パスワード未入力時のバリデーション確認」など、例外系のテストケースも作成しておくと、より網羅性の高いテストプランになります。
共有ステップの活用
「ログインページへのアクセス」など、複数のテストケースで共通する手順は、「共有ステップ(Shared Steps)」として共通化できます。
テストケース編集画面で対象のステップを選択し、「Create shared steps」をクリックして名前を付けて保存します。
他のテストケースからは「Insert shared steps」で呼び出すことが可能です。
手順に変更が生じた際も、共有ステップを1箇所修正するだけですべてのテストケースに反映されるため、テストの保守性が大幅に向上します。
テストケースとワークアイテムの関連付け
テストケースをAzure Boardsのワークアイテム(ユーザーストーリーなど)と関連付けることで、強固なトレーサビリティを確保できます。
テストケース編集画面の「Links」タブから「Add link → Existing item」を選択し、リンクタイプに「Tested by」を指定して対象のワークアイテムを検索/追加します。
この関連付けにより、各要件に対して「どのテストが紐付いているか」「現在の実施状況はどうか」を双方向に追跡可能になります。なお、前述の「要件ベーステストスイート」からテストケースを作成した場合は、この関連付けが自動的に行われます。
