公開:

ソフトウェアテスト

効率と感性で拓く、AI時代のソフトウェアテスト最前線

効率と感性で拓く、AI時代のソフトウェアテスト最前線

ソフトウェア開発の最終工程であるテストは、製品の品質を左右する重要なプロセスです。しかし人材不足や技術の高度化により、従来のやり方では「必要なテスト量を確保しきれない」「ノウハウが蓄積しにくい」といった限界も見え始めています。

そこで注目されるのが、ソフトウェアテストにおけるAIの活用です。AIは、テストの効率化を通じて生産性を大きく高めるだけでなく、人間がより創造的な領域に集中できる働き方への転換を後押しします。

本記事では、株式会社AGEST 上席常務執行役員・CQAO 髙木陽平とQA事業本部 R&D部 部長 八幡寛が、AIが変えるテスト現場のリアルとこれからの未来像について語ります。

TFACT (AIテストツール)│資料ダウンロード

1. AIはソフトウェアテストをどう変えるのか

左:上席常務執行役員・CQAO 髙木陽平 右:QA事業本部 R&D部 部長 八幡寛

―まずは、現在のソフトウェアテストの現場にみられる課題からお聞かせください。

株式会社AGEST 髙木陽平(以下、髙木):

筆頭に挙げられるのは、エンジニア不足です。ソフトウェアテストは、開発された製品の安全性や妥当性を担保する最後の砦ともいえますが、マンパワーが足りずテストの進行が遅れると、せっかく完成した製品をスピーディにリリースできないといったケースも生じえます。

もう一つ、テストに必要なノウハウが十分に積み上がっていかないという課題もあります。この業界では、新しい技術が出るたびにキャッチアップが求められますが、人手不足のなかでその知識や経験を体系的に蓄積するのは容易ではありません。

―これらの課題解決に向けて、AIの活用が今注目されています。AI導入により、ソフトウェアテストの現場は今後、どのように変化すると考えますか?

髙木:

AIは、これまで人間が時間を要してきた調査や繰り返し作業を即座に処理する能力に長けています。AIがテスト省力化に貢献することで、テスト工程含め開発現場全体の生産性は劇的に高まるでしょう。

18世紀にイギリスで起こった産業革命では、さまざまな製品の生産量がそれまでの10倍、100倍まで伸びました。同じように、ソフトウェアテストの現場でもAIの活用によって同様のインパクトが期待できます。

特に、少子高齢化が進む日本では労働人口が減少し続けており、2030年には多くの働き手が引退するといわれています。こうした深刻な状況において、ものづくりの生産性を高めることはもはや必要不可欠です。ただ見方を変えれば、日本が抱える労働環境上の課題は、AI導入を後押ししているともいえます。

株式会社AGEST 八幡寛(以下、八幡):

生成AIは、IT業界の「リソース不足を解消したい」「属人性をなくしたい」というニーズとも相性がいいと感じます。特にコード生成といったAIが得意とするプログラミング領域では、すでに活用が進んでおり、作業の効率化によってバグの発生自体も減少することが見込まれます。

一方、テスト領域におけるAI活用に関しては、いまだ大きな伸びしろがあるとも感じています。

ソフトウェアテストには「単体テスト」「結合テスト」「システムテスト」といったいくつかのレベルがあります。単体テストはプログラムの最小単位ごとに正しく動作するかを確認する工程で、AIの発展でコード上の不具合が少なくなればこうした作業は省力化されていくと思います。

ただ、システム全体を組み上げたときの「ユーザーが直感的に操作できるか」「デザインや表示が心地いいか」「自社ならではの特徴が表現できているか」といった数値化しづらい部分は、AIには判断が難しい状況です。こうした“体験の質”に直結する領域では、人間の感性によるチェックが欠かせません。AIは、基盤となる作業の自動化によって生産性を押し上げてくれます。では、人間の仕事がなくなるのかというと、決してそういうわけではなく、エンジニアには今後より創造的な領域への関与が求められる。ソフトウェアテストの現場はまさに今、効率性と感性の両輪で新たなステージに移ろうとしていると感じます。

2. AI活用のメリットと向き合うべき課題

―開発現場におけるAIの利活用は今「過渡期」にあるとわかりました。ここからはより具体的に、テスト領域でAIを導入するメリットについてお聞かせください。

髙木:

最たるものは「習熟コストを下げられること」です。

たとえばECサイトのテストを担当していたエンジニアがある日突然、医療システムのテストを任された場合、正確に対応できるようになるまで数年単位の経験が必要です。

しかし事前に必要な情報を学習させたAIがあれば、たとえ未知の領域でも「これはどういうこと?」などと質問するだけで、業界理解に必要な情報を示したうえで大まかなテスト計画やテンプレートまでも提示してくれます。人はそれらを基盤にアレンジを加えるだけでよいため、調査や習熟にかかる時間が大幅に短縮できます。

また、人間同士のやりとりで起こりがちなコミュニケーション上のストレスを軽減できるのも、AI活用の大きなメリットです。

テスト中に何らかのバグが見つかったとき「なぜこんな単純なミスを?」といった言葉が思わず飛び出してしまうことはあると思うんです。たとえ必要なフィードバックであっても、受け取る側には攻撃的に響いてしまいチームの雰囲気がぎくしゃくする原因になりがちです。

その点、AIであれば感情を挟まず、常に一定のトーンで冷静に指摘やリマインドができます。開発者も「責められている」と感じずに改善点を受け止められるため、プロジェクト全体を通じ、スムーズに作業が進むのではないでしょうか。

―AI活用にはメリットが多くあるように思えますが、課題もあるのでしょうか?

八幡:

AIの自律性にはまだ課題が残りますね。

ソフトウェアテストでは数千から数万件といった膨大なテストケースを実行し、結果を分析しなければなりません。現状、AIが起こしうる「ハルシネーション(誤答)」に関しては、最終責任は人間が負うという運用になっており、人とAIが協働するスタイルが中心の今、結局は人間の確認作業がボトルネックとなり、十分なスピードを出しきれていません。

本来であればAIにもっと自律的に処理してもらいたいところですが、まだ精度が追いつかず自動化に完全移行するには力不足だと感じています。 AIのキャパシティを最大限に活かすためにはさらなる精度向上が不可欠です。ただし「100%の精度を持つAI」がすぐに実現する未来は考えにくい。だからこそ「AIは完全には正確でない」前提に立ち、人の介入を最小限に抑えながら精度の高いテストの仕組みをどう作り上げるかを考えていく必要があります。

髙木:

学習データが古くなったときにAIの出力精度が劣化する「データドリフト」も課題の一つです。AIは大量のデータを学習することで回答精度を高めますが、人間のように新しい知識やアイデアを生み出せるわけではありません。

そのため、学習素材が古いままではアウトプットも過去の情報にしばられ、かえって質が下がってしまう現象が起こるのです。

―そういった課題に対してどのような解決策が考えられますか?

髙木:

弊社が自社で開発しているテストツール「TFACT」にはAIを組み込み、その出力に「スコア」をつける仕組みを導入しています。

たとえば、AIが確信をもって答えている場合はスコアが高く表示されるため、そのまま結果を採用していいと判断できます。一方、推論の割合が大きく信頼性が低いと判断される場合は低いスコアが出るようになっており、人間が最終確認を行ったほうがよい目安となります。

こうして「AIに任せられる部分」と「人の確認が必要な部分」をスコアで切り分けることで、リスクを抑えながら効率的にAIを活用することが可能になると考えています。

八幡:

「AIにどこまで任せるか」を定義し直すことも大切でしょうね。

弊社でも、当初は作業のほぼすべてをAIに任せようとしていました。ただ開発を進めるうちに「ここは従来型のプログラムの方が安定する」という領域も見えてきて。今は「AIに適した部分」と「プログラムで十分対応できる部分」を見極めたうえで与える役割を検討するのが現実的だと考えています。

加えて、「仕様書を読み込ませる」「業界固有のデータをあらかじめインプットする」など、どのようにAIを育てるかの視点を人間がつかむことも肝心ですね。こちらが抽象的な依頼をすれば、AIからは汎用的な回答しか返ってきません。 AIの精度向上ももちろん大切ですが、それを扱う人間が「AIに何をやらせたいか」「そのためにどんな情報を与えるか」をきちんと整理する力も今後ますます重視されるのではないでしょうか。

3. AI時代に変わる“品質”とQAの役割

―AIの利活用がテスト領域で今後ますます進むと、品質保証(QA)の在り方、そもそも“品質”の概念までも変化していくのではないかと感じます。

髙木:

おっしゃる通り、AIの活用が進むと「品質」の概念も変わるはずです。実施できるテスト数やテストフローが大きく変化するためです。

従来は「全数テストは不可能」とされ、人間が実施できる範囲に合わせてテストケースを絞り込むしかありませんでした。

全数テストとは、想定されるすべての操作や入力を試して不具合を洗い出す方法ですが、膨大すぎて人力では到底こなせなかったのです。

しかしAIなら大量のケースであっても一気に処理でき、コストも1件あたり10分の1、場合によっては100分の1にまで抑えられます。これにより、これまでは諦めていた範囲まで検証することが現実的になってきました。

さらに、テストのやり方そのものも変わります。先ほど申し上げた通り、これまでは「限られた時間とリソースで対応可能な範囲」に収めるため、事前にケースを設計して必要最小限のテストだけを実行してきました。しかしAIを活用すれば、まず膨大なパターンを走らせ、その中から有効だったケースを抽出・蓄積して次のテストに活かすといった進め方もできます。

つまり、実施するテストの内容は「あらかじめ絞って選ぶ」発想から「すべて試して選ぶ」発想へとシフトするのです。AIを活用すれば、いわゆるバーニングテスト(パニックテスト)のように、大量のテストを一気に走らせて不具合を洗い出す手法も可能になります。最終的には「どこに不具合が出たか」という結果だけを抽出し、テスト管理ツールや開発者のダッシュボードに返す、といった運用もありえるでしょう。

AIの登場によって「どこまで検証できるか」という人の限界に縛られた基準は過去のものになり、「どこまで検証することが本当に価値につながるのか」を見極めることが、品質を語るうえでの新しい基準になるのです。

八幡:

品質の評価基準が変われば、それを担うQA(品質保証)の役割も当然変わります。これからは“作業”ではなく“設計や判断”にシフトしていくのではないでしょうか。

AI導入が進んだからといって、すべての属人性が排除されるわけではありません。「どんな品質を保証すべきか」「どんな価値を届けたいか」を定義できる人材は、むしろ今後ますます貴重になります。

工学的な知識だけでなく、「こうしたい」「これがいい」といった感性が差別化の源泉になる。必ずしもエンジニア出身でなくても、発想力やデザイン力を持つ人が活躍できるフィールドは広がっていくのかもしれませんね。

4. AGESTが描くAI×ソフトウェアの未来像

―AGESTが描くAI×ソフトウェアテストの未来のビジョンについてお聞かせください。

髙木:

AIで人の力を増幅させながら、いかに効率的かつ直感的にテストを進められる仕組みを整えていくか。私たちはこの「新しい環境づくり」をAGESTの使命と位置づけています。

その一環として開発したのが、AIテストツール「TFACT」です。

現在の開発現場ではいまだにExcelやブラウザを使った手作業も多く、担当者の負担となっています。TFACTは、そうした状況をふまえ、手動テストを効率化しつつその先の工程を半自動・自動で進められる仕組みを備えています。

これにより、人間は「システム全体のユーザー体験の検証」や「競合との差別化につながる機能の確認」といった、より価値の高い業務にリソースを割けるようになります。

ただ、私たちの理想はさらにその先にあります。

お客様が「こういうシステムを作りたい」と入力するだけで、その後のテスト工程はすべて自動化される世界。かつてHTMLやCSSでのコーディングが必要だったWebサイト構築が、現在ではドラッグ&ドロップで直感的にデザインできるようになったのと同じように、ソフトウェア開発も直感的な操作で進められる未来を目指しています。

八幡:

こうした理想を語ると「遠い未来の話」に聞こえるかもしれません。実際の現場は今なお人の手に頼っている部分が多いのも事実です。だからこそTFACTでは“パワードスーツ”のように人の作業を強化するといった発想から開発に着手しました。

モビルスーツ級の自律化にはまだ距離がありますが、着実にその段階へ近づいていると感じています。

髙木:

従来の自動化では、初期投資の負担が大きいことから「回帰テストのように、同じテストを何度も繰り返す場合」にしかコストメリットが出ないと言われてきました。

しかしTFACTでは初回からマニュアルテストよりも低コストで実行できる仕組みを実現しました。これは業界にとって大きな転換点だと自負しています。 私たちAGESTが目指しているのは、単なる効率化ではありません。AIの力で人間の可能性を何倍にも引き出し、直感的にテストを進められる仕組みを業界全体に広げていくこと。その先に「ソフトウェアテストの産業革命」を実現したいと考えています。

***

「テスト効率化に限界を感じる」「自動化に挑戦したいが初期コストが大きく踏み切れない」。そんな現場の課題を解消すべくAGESTが開発したのが、AIテストツール『TFACT』です。テストの設計・実行・レポート作成までを一気通貫で支援し、AI活用により初回から従来のマニュアルテストより低コストで運用可能。「テスト効率を高めたい」「人手不足の中でも品質を守りたい」と考える方はぜひこちらをご覧ください。

TFACT (AIテストツール)

関連コンテンツ

この記事をシェア