AIがコードや仕様を高速に生成する時代となりました。一方で、最終的なレビューや品質の責任は、依然として人間に委ねられています。「コード生成が速くなった分、レビューやテストの負担が激増した」と感じていませんか? 解決の鍵は、AIには個々のテストケースを作らせる少し手前までを任せ、そこでモデル化とテスト技法を組み合わせて「人間が確認すべきポイント」を最小化することにあります。本稿では、国際規格でも高難度とされる「原因結果グラフ法」を、AIと無料ツール「NeoCEG」を活用して手軽に実践する方法を解説します。テスト担当者だけでなく、AIコーディングによるコードのスパゲッティ化(技術的負債)に悩む開発者にもぜひお読みいただきたいです。
イントロダクション
AIがコードも仕様も書く時代が到来しました。ただし、それは正しいとも信用できるとも限りません。人間によるレビューやテストは欠かせないと言われています。結局、責任を負えるのは人間の側だけだからです。
コード作成のスピードアップにより、相対的にテストやレビューが人間にとって大きな負担となっています。そこで当然、そのテストやレビューもAIにやってもらいたいと思うわけです。指示すればやってくれます。が、再び、その質の評価や確認・判断が人間に回ってきます。そこはどうやっても逃げられません。
そこで、本稿ではテスト設計へのAI活用を前提に、レビューや評価をどうやったら楽にできるようになるか、ひとつの考え方をご紹介します。
テスト設計が話の中心ですが、AIにテストしやすいコードを作らせ、コードの複雑さを抑える対策にもつながる内容となっています。また、バイブコーディングの本質的な問題が何なのかにも触れるので、テスト技術者だけではなく、開発設計者やプログラマーの方にもぜひ読んでいただきたいです。
レビューをしやすくする工夫
レビューをしやすくする方法を2つご紹介します。「モデル図を活用する方法」と「テスト技法を活用する方法」です。「なんだ、従来通りではないか」と思われてしまうかもしれませんが、AIをうまく活用するところが違います。
一般的に図に表現したほうが、内容の正確な理解を容易にすることが期待できます。読み手の持つ知識や情報の量による解釈のばらつきが少なくなります。
モデル化する過程で関心事以外の部分を省略し、注目すべき情報に絞り込み、思考を整理しやすくなります。
わかっているのにモデル化しないのは、図を描くのが面倒だからです。「誰か描いてくれるとよいのに」と、互いに思っていたりします。今はAIに描いてもらえるようになりました。
次に、テスト(設計)技法です。いろいろあるテスト(設計)技法は、基本的に何らかの意味で網羅性を担保するものです。そしてこれらも適切に使えばレビューの手間を大きく削減することができます。簡単な例で確認してみましょう。
ECサイトのある機能の入力因子(パラメータ)と水準(同値クラス)が以下の表のようになっているとしましょう。
【入力】因子・水準表(技法適用時はここだけ確認)
| 因子 | 水準1 | 水準2 | 水準3 | 水準4 |
|---|---|---|---|---|
| 会員種別 | ゲスト | 通常会員 | プレミアム | |
| 配送方法 | 通常 | お急ぎ | ||
| 受け取り方法 | 置き配 | 直接受け取り | コンビニ受取 | |
| 決済方法 | クレジットカード | コンビニ払い | 銀行振込 | 代金引換 |
テスト技法を適用した場合とそうでない場合に、レビュー・評価・説明にどのような差が出るかを以下にまとめてみました。
上記の因子・水準表のすべての組み合わせをテストしたい場合、技法としてデシジョンテーブルを作成すればよいわけです。人手作業やAIに作らせたら、全部の組み合わせが出ているか、間違いないかを、結果の72通りすべてについてレビューなどを通して確認しないといけません。一方、技法やツールを適切に適用すれば、結果の正しさはアルゴリズムが保証してくれるので、入力側が正しいことだけ確認すれば十分です。
技法を使わないと、手間のことだけではなく、肝心なテストの質の説明に一番困ることになります。
以上の説明からわかるように、AIに個々のテストケースを作成させることは得策ではありません。AIには上記のような因子・水準表など、レビューしやすいポイントまでを生成させておき、あとはアルゴリズムに任せるのが合理的です。
会員登録無料すると、続きをお読みいただけます
-
- Page 1
-
- Page 2
-
- Page 3
この記事は参考になりましたか?
- AI時代のソフトウェアテスト技法活用法連載記事一覧
-
- 状態遷移表はなぜ必要か?「制約」から見える原因結果グラフ法の真価と、論理関係との境界線
- AIで「世界一難しいテスト技法」の敷居を下げる──面倒だった原因結果グラフ法をお手軽に
- この記事の著者
-
林 祥一(オーティファイ株式会社)(ハヤシ ショウイチ)
NTTソフトウェア、富士ゼロックスのシステム技術研究所等を経て、2025年に現職のオーティファイ株式会社に入社。オブジェクト指向言語拡張によるマルチエージェントシステムやCSCWの研究などを起点に、ITアーキテクト兼商品企画を中心にキャリアを築く。エンタープライズ領域における研究、商品企画、ビジネス分析、要求開発、設計、開発、プロモーション、ソリューション営業のほぼ全工程に従事。2010年にソフトウェアテスト技...
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
この記事は参考になりましたか?
この記事をシェア
