AIでテストケースを作る方法!品質を落とさない使い方を現役SEが解説
AIを使うと、テストケース作成の負担はかなり軽くなります。
仕様書から正常系、異常系、境界値、権限別の確認観点を出す。画面項目から入力チェックのパターンを作る。API仕様からレスポンス確認の観点を整理する。こうした作業は、生成AIと相性が良いです。
ただし、AIが作ったテストケースをそのまま使うのは危険です。
テストは、表を埋める作業ではありません。仕様通りに動くか、利用者が困らないか、運用で問題が起きないかを確認する作業です。
この記事では、SEとしてキャリアアップしたい人向けに、AIでテストケースを作る手順と、品質を落とさないための注意点を現役SEの実務目線で解説します。
結論:AIには観点出しを任せ、人間が妥当性を判断する
AIでテストケースを作るときの基本は、AIに「観点出し」と「たたき台作成」を任せることです。
具体的には、次の作業に向いています。
- 仕様書からテスト観点を洗い出す
- 正常系、異常系、境界値のパターンを作る
- 権限別の確認項目を整理する
- 入力チェックの組み合わせを出す
- APIのリクエストとレスポンス確認を整理する
- テストケースの抜け漏れを指摘する
一方で、AIに任せてはいけないのは、テストの優先順位、合格基準、品質リスクの判断です。
どこまでテストするべきか、どの機能を重点的に見るべきか、リリース前に何を必ず確認するべきかは、案件の背景を理解した人間が判断します。
AIは、テスト担当者を置き換えるものではありません。
テスト設計の視野を広げ、抜け漏れを減らすための補助役として使うのが安全です。
AIに渡す前に整理する情報
AIに「この機能のテストケースを作って」とだけ依頼しても、実務で使えるテストケースにはなりにくいです。
先に、次の情報を整理します。
- 対象機能
- 利用者の種類
- 前提条件
- 入力項目
- 必須チェック
- 桁数や形式チェック
- 権限による表示や操作の違い
- 正常時の結果
- エラー時の結果
- 関連する画面やAPI
- 未決事項
この情報が少ないと、AIは一般的なパターンで補ってしまいます。
見た目は整っていても、実際の仕様と違うテストケースになることがあります。
前回の記事「生成AIで設計書を作る方法」でも書いた通り、AIに渡す前に材料を整理することが重要です。
AIでテストケースを作る手順
1. まずテスト観点を洗い出す
最初に、AIへテストケースそのものではなく、テスト観点を出してもらいます。
たとえば、次のように依頼します。
「会員登録画面の仕様をもとに、テスト観点を洗い出してください。正常系、異常系、境界値、権限、セキュリティ、運用の観点に分けてください。仕様に書かれていない内容は推測せず、確認事項として分けてください。」
いきなりテストケース一覧を作るより、先に観点を出したほうがレビューしやすくなります。
初心者は、正常系だけを確認して終わりがちです。
しかし実務では、異常系、境界値、権限、データの状態、二重送信、ブラウザ戻る、タイムアウト、運用時の確認まで考える必要があります。
AIには、こうした観点を広げる役割を持たせます。
2. 正常系と異常系を分ける
次に、正常系と異常系を分けてテストケースを作ります。
正常系は、仕様通りに入力したときに期待通り動くかを確認するテストです。
異常系は、未入力、形式不正、桁数超過、存在しないデータ、権限不足、重複登録など、想定外や制約違反の入力に対する動きを確認するテストです。
AIには、次のように依頼できます。
「以下の画面仕様から、正常系と異常系のテストケースを分けて作ってください。列は、No、観点、前提条件、操作手順、入力値、期待結果、確認区分にしてください。」
ポイントは、期待結果まで出させることです。
入力値だけのテストケースでは、実行者によって判断がぶれます。
期待結果を明確にしておくと、レビューもしやすくなります。
3. 境界値を確認する
入力チェックでは、境界値の確認が重要です。
たとえば、パスワードが8文字以上20文字以内なら、次のようなテストが必要です。
- 7文字でエラーになるか
- 8文字で登録できるか
- 20文字で登録できるか
- 21文字でエラーになるか
AIには、次のように依頼できます。
「以下の入力項目について、境界値テストのパターンを作ってください。最小値、最小値未満、最大値、最大値超過を含めてください。」
境界値は、AIに出させると漏れを減らしやすいです。
ただし、仕様に最大桁数や許容範囲が書かれていない場合は、AIが勝手に決めてしまうことがあります。その場合は、テストケースにせず、確認事項として残します。
4. 権限別のテストを作る
業務システムでは、権限による違いが重要です。
管理者、一般ユーザー、承認者、閲覧のみのユーザーなど、立場によって見える画面や使える機能が変わることがあります。
AIには、次のように依頼できます。
「以下の機能について、権限別に確認すべきテストケースを作ってください。表示できる項目、操作できるボタン、更新可否、エラー表示、直接URLアクセス時の動きを含めてください。」
権限テストで見落としやすいのは、画面上のボタン表示だけを確認して終わることです。
実務では、URLを直接開いた場合、APIを直接呼んだ場合、別ユーザーのデータを指定した場合も確認することがあります。
AIに観点を出させると、こうした抜け漏れを減らせます。
5. APIテストの観点を整理する
APIを含むシステムでは、画面テストだけでは不十分です。
リクエスト項目、レスポンス項目、ステータスコード、認証、権限、エラー時のレスポンス、タイムアウト、重複リクエストなどを確認します。
AIには、API仕様を渡して次のように依頼できます。
「このAPI仕様から、テストケースを作ってください。正常系、必須項目不足、形式不正、権限不足、対象データなし、重複リクエスト、レスポンス項目確認を含めてください。」
APIテストでは、期待結果が曖昧だと実行時に迷います。
ステータスコード、エラーメッセージ、レスポンスJSONの項目まで確認できる形にするのがおすすめです。
現場経験から見たAIテストケースの注意点
私はこれまで、ECサイト構築、EC-CUBEプラグイン開発、会員管理システム、業務系Webシステムなどで、設計、実装、テスト、レビュー、保守運用に携わってきました。
その経験から見ると、AIで作ったテストケースで特に注意すべきなのは、次の3つです。
- 仕様にない内容をAIが補っていないか
- 重要な業務リスクが軽く扱われていないか
- 実行できない手順になっていないか
AIは、一般的なテストケースを作るのは得意です。
しかし、案件固有の事情は入力しないとわかりません。
たとえば、ECサイトであれば、注文、決済、在庫、会員、メール通知、キャンセル、返品、管理画面などが関係します。
単純な入力チェックだけでなく、「決済完了後に在庫が正しく減るか」「注文確定メールが二重送信されないか」「管理画面でキャンセルした場合に会員側の表示が変わるか」といった業務のつながりを見る必要があります。
AIが作ったテストケースは、部品ごとの確認には使えます。
ただし、業務全体の流れや、運用で困るポイントまで含めて確認するのは人間の仕事です。
AIでテストケースを作るときのプロンプト例
実務で使いやすいプロンプト例を紹介します。
テスト観点を出すプロンプト
「以下の仕様から、テスト観点を洗い出してください。正常系、異常系、境界値、権限、データ状態、セキュリティ、運用の観点に分けてください。仕様に書かれていない内容は確認事項として分けてください。」
テストケース一覧を作るプロンプト
「以下の仕様とテスト観点をもとに、テストケース一覧を作ってください。列は、No、分類、前提条件、操作手順、入力値、期待結果、確認方法、備考にしてください。」
抜け漏れを確認するプロンプト
「以下のテストケース一覧について、抜け漏れ、重複、期待結果の曖昧さ、実行手順の不足を指摘してください。追加すべきテストケースも提案してください。」
優先度を整理するプロンプト
「以下のテストケースを、リリース前に必ず確認すべきもの、時間があれば確認するもの、重複している可能性があるものに分けてください。理由も書いてください。」
AIテストケースをレビューするときのチェック項目
AIで作ったテストケースは、必ず人間がレビューします。
特に、次の項目を確認します。
- 仕様書や設計書と矛盾していないか
- 正常系だけに偏っていないか
- 異常系と境界値が入っているか
- 権限別の確認が入っているか
- 期待結果が具体的に書かれているか
- 実行手順が再現できるか
- テストデータの作り方が明確か
- 業務上の重要な流れが確認できるか
- 個人情報や機密情報をAIに入力していないか
この観点は、AIコードレビューの使い方と注意点にも近いです。
AIの出力は参考になりますが、最終的に品質を判断するのは人間です。
初心者SEが今日から試せる使い方
AIでテストケースを作る練習をするなら、まず小さな範囲で試すのがおすすめです。
いきなりシステム全体のテストを作ろうとせず、1画面、1機能、1APIに絞ります。
たとえば、会員登録画面なら次の順番で進めます。
1つ目は、画面項目と入力チェックを整理することです。
2つ目は、正常系、異常系、境界値のテスト観点をAIに出させることです。
3つ目は、AIが作ったテストケースを自分でレビューし、仕様にない内容を確認事項に分けることです。
これだけでも、テスト設計の練習になります。
さらに理解を深めたい場合は、「ECサイト開発で初心者がつまずきやすい設計ポイント」の内容を題材にして、注文、会員、在庫、管理画面ごとにテスト観点を作ってみると実務に近い練習になります。
まとめ
AIは、テストケース作成を効率化する便利な道具です。
正常系、異常系、境界値、権限、API、レビュー観点の洗い出しには十分使えます。
一方で、AIが作ったテストケースをそのまま信じるのは危険です。
仕様にない内容を補っていないか、重要な業務リスクが抜けていないか、期待結果が曖昧ではないかを人間が確認する必要があります。
テストで大切なのは、ケース数を増やすことではありません。
本当に壊れてはいけないところを確認し、利用者や運用担当者が困らない状態に近づけることです。
AIを使うSEに必要なのは、AIに表を作らせる力だけではなく、AIの出力をレビューして品質リスクを見抜く力です。
テストケース作成でAIをうまく使えるようになると、設計、実装、レビュー、リリース前確認まで一貫して品質を考えられるようになります。