テスト設計AI
そのテスト、何を確かめるべきかが決まる前に、書き始めていませんか。
無料ベータ・面談制/正式版は有料提供予定
概要
作り手は実装に意識が向き、境界・異常系・組合せ・状態の抜けや「そもそも何をもって合格とするか」を後回しにしがちです。テストフェーズで気づくと手戻りが高くつきます。本ツールは設計の段階で観点と技法、そしてテスト不能な箇所を先回りで可視化し、実装前に「テストできる設計」へ引き上げます。
効果
- 境界値・組合せ・状態遷移のテストケースを技法に沿って機械生成し、設計時の抜けを防ぐ。
- 仕様文から「期待動作が一意に決まらない/観測・制御できない箇所」を抽出し、テスト前に仕様の穴を塞ぐ。
- ペルソナ7視点・ISO/IEC 25010 の8品質特性で観点の抜けを指摘し、追加すべきテスト例まで返す。
- 技法系の生成は決定的・鍵不要で、CIに載せて再現可能なケース生成に使える。
インプット
- 仕様文(自然言語)
- 数値範囲
- 条件名リスト
- 因子×水準
- 状態・イベント
汎用LLMとの違い
どの技法をいつ当てるか、どこがテスト不能か、どの観点が抜けているかの判定規則・観点カタログ(ペルソナ視点×品質特性)が bubo 独自の中核です。汎用LLMに「テスト考えて」と頼むより、技法の入力候補まで具体化し、テスト不能な箇所と観点の抜けを取りこぼさず指摘します。
実際の入力と、返ってきた出力
同じ仕様を、汎用AIと test-design にそのまま渡した実際のやりとりです(要約ではありません)。
ユーザーはパスワードを変更できる。新しいパスワードは8文字以上32文字以下で、英字と数字をそれぞれ1文字以上含むこと。現在のパスワードが一致しない場合はエラーを返す。変更に成功したら確認メールを送る。アカウントは「未ログイン」「ログイン中」「ロック中」の3状態を持ち、ログインに5回連続で失敗するとロック中になる。
以下、テスト観点・テスト設計です。 ## 境界値分析:パスワード文字数 | No | 新パスワード長 | 期待結果 | |---|---|---| | 1 | 7文字 | エラー(下限未満) | | 2 | 8文字 | 成功(下限) | | 3 | 9文字 | 成功 | | 4 | 31文字 | 成功 | | 5 | 32文字 | 成功(上限) | | 6 | 33文字 | エラー(上限超過) | | 7 | 0文字(空) | エラー | ## 文字種条件(デシジョンテーブル) 英字1文字以上/数字1文字以上を独立判定。英数混合=成功、数字なし/英字なし/両方なし=エラー。記号・全角・大文字小文字の扱いは要仕様確認。 ## アカウント状態遷移 未ログイン →(ログイン成功)→ ログイン中、(5回連続失敗)→ ロック中。ロック中は正しい資格でも拒否。ロック解除条件は仕様未記載=要確認。 ## セキュリティ観点 平文ログ禁止、レート制限、変更成功後の他セッション無効化、確認メールに新パスワードを載せない。 ## 仕様ギャップ(要確認) 1. ロック解除の条件・方法 2. 失敗回数リセット条件 3. 許可文字種(記号/全角/大小) 4. 新=旧パスワード一致の可否 5. エラー複数該当時の優先順位 6. 変更後の他セッション無効化 7. メール送信失敗時のロールバック
# テスト設計(技法・観点網羅・品質特性を機械的に) ## 適用すべきテスト技法(具体入力つき) - 境界値分析:パスワード長 → 7 / 8 / 32 / 33 文字 - 同値分割:英数混合/英のみ/数字のみ/記号のみ、現パスワード 一致/不一致 - 状態遷移:未ログイン → ログイン中 → ロック中(失敗 0〜5回) ## テスト容易性の穴(期待動作が一意に決まらない) - 未定義の状態×イベント組合せの扱いが不明(無視/エラー/維持) - ロック解除条件・失敗回数リセットのタイミングが不明 - メール送信失敗時にパスワード変更をロールバックするか不明 ## 観点網羅マップ(人が落としがちな視点を名指しで) - 新人の誤操作:空のまま送信・ボタン連打での二重登録 … 未カバー - 悪意ある操作者:境界外・不正値・権限外アクセス・改ざん・二重送信 … 未カバー - データ整合性:保存値・関連テーブル・集計の整合 … 未カバー - データ移行:旧データの欠損・異形式・文字コード・件数一致 … 未カバー - 回帰デグレ:変更の周辺機能への波及・既存フロー再確認 … 未カバー - 仕様懐疑:実装=正解とせず一次情報と突合 … 未カバー - 熟練者の高速大量操作 … カバー済み ## 品質特性網羅(ISO25010・機械的に充足チェック) - 信頼性/セキュリティ/保守性 … 触れている - 機能適切性 … 未(正常系の機能網羅) - 性能効率性 … 未(大量データ・高負荷) - 互換性 … 未(他システム連携・ブラウザ/OS差) - 使用性 … 未(わかりやすさ・誤操作しにくさ) - 移植性 … 未(環境差・移行のしやすさ)
同じ入力を渡した実際のやりとりです。汎用AIも良いテスト設計を出しますが、毎回ぶれ、落としがちな観点の網羅は保証されません。
汎用LLMだけに任せず、test-design を使う理由
汎用AIも良いテスト観点を出します。差は品質ではなく、落としがちな視点と品質特性を毎回・網羅的に名指しで示し、決定的に返すことです。
汎用LLMだけに任せると
毎回ぶれて、基準にできない
構成・粒度・網羅範囲が実行ごとに変わり、テスト設計の基準にできない。
観点の抜けに気づけない
悪意・回帰・データ整合性など人が落としがちな視点を、体系的に列挙する保証がない。
品質特性の抜けを示さない
ISO25010等の観点で「触れていない特性」を機械的には可視化しない。
test-design なら
技法+具体入力を決定的に
境界値・デシジョン・状態遷移を、具体値つきで毎回同じ品質で提案する。
落としがちな視点を名指しで
新人の誤操作・悪意・データ整合性・回帰・仕様懐疑…の観点網羅マップで抜けを可視化する。
品質特性を機械的に網羅
ISO25010の8特性を touched 判定し、未着手の特性を明示する。
社外秘のコードを、どう守るか
buboは入力を保存しません
ツールに渡したコード・仕様・データを、buboのサーバーは保存しません。bubo自身が学習に使うこともなく、処理はその場限りです。
AIに送るか・どこへ送るかは、あなたが握ります
LLMはお手元の鍵で、あなたが選んだプロバイダを呼びます。学習に使うかどうかといったデータの規約も、あなたとプロバイダの契約のもとにあります。なお、LLMキーを使うツールは現時点でClaude・Geminiに対応しており、他プロバイダは順次対応予定です。
AIに送らず動くツールも多くあります
多くのツールは決定的な静的解析だけで完結し、LLMに渡すのは必要な場面に限られます。AIに送る範囲を、あなた自身で絞り込めます。
どう申し込み、どうつなぐのか
1. 面談を予約する
予約フォームから面談をお申し込みください。現在のQAの困りごとと、試したいツールをお聞かせいただきます。
2. 面談で適用先を一緒に決める
そろえたツールのうち、貴社の工程で効く順番をご一緒に見立てます。設定方法・つなぎ方は、この面談でお渡しします。
3. お手元のLLMで動かす
お手元のLLMの鍵(ご自身の鍵をそのまま使うこの方式を、BYOKと呼びます)を設定し、buboのMCPサーバーへ接続。普段お使いのAIクライアントから、そのままQA方法論を呼び出せます。