30
22

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

生成AIでテスト設計の手作業を半減させた話【Claude Code × Notion】

30
Last updated at Posted at 2025-12-22

はじめに

こんにちは!KIYOラーニング株式会社でQAエンジニアをしている坪根です。

突然ですが、QAエンジニアの皆さん、こんな経験はありませんか?

  • テスト観点表からテストケースへのコピペ作業が終わらない
  • テストケース番号の採番ミスで手戻りが発生
  • 単純作業に時間を取られて、本来注力すべきテスト設計に集中できない

私もこれらの課題に悩まされていました。そこで生成AIを導入したところ、手作業にかかる時間を約50%削減できました。

案件規模 導入前 導入後
小規模案件 2時間 1時間
大規模案件 20時間 10時間

※体感値であり、案件の内容によって変動します

本記事では、生成AIを活用してテスト設計を効率化する方法と、導入時につまずいたポイントを紹介します。

本記事で学べること

  • テスト設計における手作業を削減する方法
  • 生成AIを使ったテストケースの自動生成手順
  • 運用上の課題と解決策

従来のテスト設計における課題

これまでのテスト設計では、以下のような手作業が発生していました。

  1. コピペ地獄:テスト観点から期待結果などをテストケースに手動でコピペ
  2. 採番作業:ルールに従ってテストケース番号を手動で採番
  3. データ・手順の記入:テストデータやテスト手順を手動で記入

正直なところ、これらは「やらなければいけないけど、頭を使う作業ではない」ものばかり。生成AIに任せられるのでは?と考えたのが導入のきっかけです。

テスト観点例
image.png

テストケース例
image.png

生成AIを使ったテストケース作成手順

実行環境

本記事で紹介する手順は、以下のツールを使用しています。同様のツールであれば代替可能です。

用途 使用ツール
生成AIサービス Claude Code
コードエディタ VSCode
ソースコード管理 GitHub
テストケース管理 Notion

必要なもの

  • テスト観点をまとめたマークダウン形式のファイル
  • テストケースファイル生成プロンプト

テスト観点ファイル例

## 1. グループ作成画面
| No | 要素(大) | 要素(中) | 要素(小) | テストで確認すること | テスト種別 | 備考 |
|:---|:---------|:---------|:---------|:--------------------|:-----------|:-----|
| 1 | グループ作成 | 入力フォーム | テキスト入力 | テキスト入力が正しく動作すること | 手動リグレッションテスト |  |
| 2 | グループ作成 | 入力フォーム | テキスト装飾 | テキスト装飾機能が正しく動作すること | 手動リグレッションテスト |  |
| 3 | グループ作成 | ラベル選択 | - | ラベル選択が正しく動作すること | 機能テスト |  |
| 4 | グループ作成 | 保存ボタン | - | 保存ボタンが正しく動作すること | 手動リグレッションテスト |  |

テストケースファイル生成プロンプト例

### テストケース生成指示

提供されたテスト観点一覧を基に、以下のルールに従ってテストケースを作成してください。

***

### テストケース作成ルール

1.  テスト観点一覧に記載された内容を基に、テストケースを作成すること。

2.  一つのテストケースに対して、検証対象および期待される結果は一つのみとすること。
    *   複数の観点や条件を一つのテストケースに含めない。

3.  テストケースには、以下の項目を含めること。

    *   管理番号
    *   テスト内容
    *   分類
    *   対象種別
    *   対象名称
    *   対象要素(大分類)
    *   対象要素(中分類)
    *   対象要素(小分類)
    *   実施前提条件
    *   使用データ
    *   実施手順
    *   期待結果
    *   確認者
    *   確認結果(環境A)
    *   確認結果(環境B)
    *   テスト区分
    *   補足事項
    *   不具合管理リンク

4.  テスト観点一覧に記載された観点は、省略せずすべてテストケースとして作成すること。
    *   同一観点が複数の対象に存在する場合も、それぞれ個別のテストケースを作成する。

5.  テスト区分は、該当するテスト観点の内容を基準に、最も適切なものを一つだけ選択すること。

    テスト区分例:

    *   基本動作確認
    *   表示確認
    *   性能確認
    *   動作環境確認
    *   負荷確認
    *   再確認テスト

6.  補足事項には、実施上の注意点や特記事項がある場合のみ記載すること。

7.  テストケースは、外部ツールへの一括取り込みを想定し、単一のCSV形式として出力すること。
    *   区切り文字には特定の記号を使用せず、文章表現用の句読点を使用すること。

8.  管理番号は、対象単位および観点単位で識別可能な形式とすること。

    *   番号体系は以下を満たすこと。
        *   対象を表す番号
        *   観点を表す番号

    記載例:

    *   A-1
    *   A-2
    *   B-1

9.  動作環境の違いによる確認が必要な観点については、

    *   複数の異なる利用環境を想定し
    *   環境ごとに個別のテストケースを作成すること。

    利用環境は、

    *   異なる端末種別
    *   異なる実行方法
    *   異なる動作条件  
        といった組み合わせとして表現すること。

手順

  1. テスト観点ファイルとソースコード、プロンプトを元に、テストケースファイルを生成します
  2. 生成したテストケースファイルをCSVファイル形式でエクスポートします
  3. エクスポートしたファイルをNotionにインポートします

たったこれだけです。

テスト観点ファイルを元にテストケースファイルを生成し、テストケース管理ツールにインポートすることで、手動のコピペ作業がなくなりました。テストケース番号や手順、テストデータなども生成AIが自動で生成してくれます。

生成されたテストケースファイル例

番号,テストケース,機能分類,画面種別,画面名,要素(大),要素(中),要素(小),前提条件,テストデータ,手順,期待結果,確認担当者,確認結果(PC),確認結果(SP),テスト種別,備考,バグチケットURL
1-1,テキスト入力が正しく動作すること,グループ作成,管理画面,グループ作成画面,グループ作成,入力フォーム,テキスト入力,グループ作成画面を表示していること,任意のテキスト,1. テキスト入力欄にテキストを入力する,入力したテキストが正しく表示されること,,,, 手動リグレッションテスト,,
1-2,テキスト装飾機能が正しく動作すること,グループ作成,管理画面,グループ作成画面,グループ作成,入力フォーム,テキスト装飾,グループ作成画面を表示していること,任意のテキスト,1. テキストを入力する。2. テキストを選択し装飾(太字など)を適用する,選択したテキストに装飾が正しく適用されること,,,, 手動リグレッションテスト,,
1-3,ラベル選択が正しく動作すること,グループ作成,管理画面,グループ作成画面,グループ作成,ラベル選択,-,グループ作成画面を表示していること,選択可能なラベル,1. ラベル選択欄をクリックする。2. 任意のラベルを選択する,選択したラベルが正しく設定されること,,,,機能テスト,,
1-4,保存ボタンが正しく動作すること,グループ作成,管理画面,グループ作成画面,グループ作成,保存ボタン,-,グループ作成画面で必要項目を入力していること,入力済みのグループ情報,1. 保存ボタンをクリックする,入力した内容でグループが保存されること,,,, 手動リグレッションテスト,,

テストケースインポート例
image.png
image.png

運用上の課題と解決策

導入は簡単でしたが、運用する中でいくつかの課題に直面しました。同じ問題でつまずく方の参考になれば幸いです。

解決できた課題

⚠️ テスト観点の一部が反映されない

課題
テスト観点ファイルの一部がテストケースに反映されない問題が発生しました。

原因
調査したところ、表の一行に複数のテスト観点が含まれる場合、最初のテスト観点のみが反映されていました。

解決策
表の各行には、テスト観点を一つだけ記入する運用に変更したところ、反映漏れを防げました。

💡 ポイント:生成AIは「一行=一項目」と解釈しやすいようです。入力データの構造はシンプルに保つのがコツです。


⚠️ 最大トークン数の超過エラー

課題
テストケース生成時に、以下のエラーが発生しました。

API Error: Claude's response exceeded the 32000 output token maximum. To configure this behavior, set the CLAUDE_CODE_MAX_OUTPUT_TOKENS environment variable

原因
生成されたレスポンスが許可されている最大トークン数(32,000トークン)を超えました。大規模な案件でテスト観点が多い場合に発生しやすいです。

解決策
テスト観点ファイルを分割し、分割したファイルごとにテストケースを生成しました。分割して生成したファイルは、既存のデータベースに追加する形でインポートすることで、一つのテストケースとして統合できました。


対応中の課題

🔧 生成内容の精度向上

課題
生成されたテストデータやテスト手順に、誤った記載が含まれることがあります。

現在の対応
生成内容を目視で確認し、誤りがあれば再生成しています。同じような誤りが再発しないよう、プロンプトに指示を追加して改善を進めています。

💡 ポイント:生成AIの出力品質はプロンプト次第。「なぜ間違えたのか」を分析してプロンプトを改善するサイクルが重要です。

まとめ

生成AIを活用したテスト設計により、以下の効果が得られました。

効果 詳細
⏱️ 作業時間の短縮 手作業が約50%削減
✅ ヒューマンエラーの削減 コピペミスや採番ミスがなくなった
📋 テストケースの標準化 フォーマットが統一され、レビューしやすくなった

「生成AIにテスト設計を任せる」と聞くと不安に感じる方もいるかもしれません。しかし、実際に任せているのは「コピペ」「採番」「転記」といった単純作業です。テスト観点の検討や品質の判断といった本質的な業務は、引き続きQAエンジニアが担います。

むしろ、単純作業から解放されることで、より重要な業務に集中できるようになりました。

次回予告

今回の記事では触れませんでしたが、テストケース生成以外にも以下のファイル生成にもAIを活用しています。

  • テスト対象画面一覧ファイル
  • 画面要素一覧ファイル
  • テスト観点ファイル

これらについても、別の記事で詳しく紹介したいと思います。お楽しみに!

KIYOラーニング株式会社について

当社のビジョンは『世界一「学びやすく、分かりやすく、続けやすい」学習手段を提供する』ことです。革新的な教育サービスを作り成長させていく事で、オンライン教育分野でナンバーワンの存在となり、世界に展開していくことを目指しています。

プロダクト

  • スタディング:「学びやすく・わかりやすく・続けやすい」オンライン資格対策講座
  • スタディングキャリア:資格取得者の仕事探しやキャリア形成を支援する転職サービス
  • AirCourse:受け放題の動画研修がついたeラーニングシステム(LMS)

KIYOラーニング株式会社では一緒に働く仲間を募集しています

30
22
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
30
22

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?