MENU

AIでテスト観点を出すときの注意点――生成AIの回答をそのまま使わないために

生成AIに仕様を入力して、

「この機能のテスト観点を出してください」

と聞くと、かなり簡単にそれらしい回答を出してくれます。

正常系、異常系、境界値、エラー処理、権限、性能など、短時間で多くの観点を挙げてくれるので、テスト設計のたたき台としてはかなり便利です。

自分も、生成AIはテスト業務と相性がよいと感じています。

ただし、実際に使うときには一つ注意したいことがあります。

AIが出したテスト観点を、そのまま正しいものとして使わないこと

です。

今回は、生成AIにテスト観点を出してもらうときに、どこを確認すればよいのかを整理してみます。

AIは「それらしい観点」を出すのが得意

生成AIに仕様を渡すと、かなり幅広くテスト観点を出してくれます。

例えばログイン機能であれば、

  • 正しいIDとパスワードでログインできる

  • 間違ったパスワードではログインできない

  • 未入力時にエラーになる

  • 文字数の上限・下限

  • アカウントロック

  • セッション管理

  • 権限

  • セキュリティ

といった内容がすぐに出てきます。

ゼロから自分で考えるより、最初の候補を出してもらう用途ではかなり便利です。

ただ、ここで注意したいのは、

観点が多いことと、必要な観点がそろっていることは別

という点です。

観点が抜けていないか確認する

AIは一般的な観点を広く挙げるのは得意ですが、そのシステム固有の重要な条件まで理解しているとは限りません。

例えば、

「この機能は特定の装置との通信状態によって動作が変わる」

「既存バージョンとの互換性が重要」

「特定の設定変更後だけ問題が起きやすい」

といった背景は、仕様書だけでは分からないことがあります。

実務では、こうしたシステム固有の事情が重要になることがあります。

そのため、AIが出した結果を見たあとに、

「この製品だからこそ必要な観点が入っているか」

を確認する必要があります。

逆に、不要な観点が入っていることもある

生成AIは多くの候補を出してくれるため、一見すると網羅的に見えます。

ただし、実際には、

「このシステムでは存在しない条件」

「仕様上あり得ない操作」

「優先度がかなり低いケース」

まで含まれていることがあります。

AIが20個の観点を出したからといって、その20個を全部テストする必要があるわけではありません。

テストには時間も工数も限りがあります。

そのため、

本当に必要なテストなのか

リスクに対して優先順位は適切か

を人が判断する必要があります。

重複している観点がないか確認する

生成AIに何度か観点を出してもらうと、似たような内容が別の表現で並ぶことがあります。

例えば、

  • 入力値が上限を超えた場合

  • 最大文字数を超えた場合

  • 許容文字数を超えた場合

など、実質的に同じ内容が複数出ることがあります。

項目数が多いと安心してしまいますが、数が多いこと自体には意味がありません。

むしろ、

同じ目的のテストが重複していないか

を整理して、必要な観点にまとめることが重要です。

「なぜその観点が必要なのか」を確認する

AIが出したテスト観点を見たとき、自分なら、

「なぜこのテストが必要なのか」

を考えるようにします。

理由が説明できない観点は、もう一度確認したほうがよいと思います。

例えばAIに、

このテスト観点を確認する目的と、確認しなかった場合のリスクを説明してください。

と聞いてみてもよいです。

目的とリスクが分かると、

「これは優先度が高い」

「これは今回の変更では不要」

と判断しやすくなります。

仕様だけではなく、変更内容も伝える

生成AIを使うとき、単純に仕様を渡すだけではなく、

今回どこを変更したのか

も伝えたほうが使いやすいと思います。

例えば、

この機能のテスト観点を出してください。

だけではなく、

今回、認証方式を変更しました。
既存機能への影響も含めて、重点的に確認すべきテスト観点を出してください。

というように聞きます。

そうすると、単なる機能テストではなく、変更による影響も意識した回答が出やすくなります。

実務では、新規機能だけでなく、

変更によって既存部分に何が起きるか

を見ることも重要です。

前提条件をできるだけ伝える

AIの回答品質は、与える情報によってかなり変わります。

例えば、

  • 対象システム

  • 今回の変更内容

  • 想定ユーザー

  • 制約条件

  • 重要な機能

  • 過去に問題が起きた部分

  • 特に確認したいリスク

などを伝えると、一般論だけではない回答になりやすくなります。

逆に、情報が少なければ、AIも一般的な回答しか出せません。

これは人にテスト設計を依頼する場合でも同じだと思います。

AIに「抜け」を確認させる使い方もできる

自分で作ったテスト観点をAIに渡して、

以下のテスト観点について、抜けている可能性がある観点を指摘してください。

と聞く方法もあります。

AIに最初からすべて作らせるのではなく、

自分が考えた観点のレビュー役として使う

方法です。

個人的には、この使い方はかなり相性がよいと思います。

人が考えた内容をAIに確認させることで、

「自分では気づかなかった視点」

が出てくることがあります。

もちろん、追加された観点が本当に必要かどうかは、最後に人が判断します。

一度で完成させようとしない

生成AIを使うときに、

「完璧なテスト観点を一回で出してもらおう」

と考える必要はないと思います。

まず大きな観点を出してもらう。

その中から重要なものを選ぶ。

選んだ観点について、さらに具体化する。

最後に抜けがないか確認する。

というように、何回かに分けて使うほうが整理しやすいです。

例えば、

まず大きなテスト観点だけを10個以内で出してください。

と聞いたあと、

その中の「エラー処理」について、詳細な観点を出してください。

という流れです。

最初から大量のテストケースを作らせるより、段階的に考えたほうが内容を確認しやすくなります。

機密情報は入力しない

実務で生成AIを使う場合は、もう一つ重要な点があります。

社外秘の仕様や顧客情報などを、そのまま入力しないこと

です。

利用している生成AIサービスや、会社のルールによって扱いは異なります。

業務で使用する場合は、必ず社内のルールや利用可能な環境を確認する必要があります。

テストを効率化するためにAIを使っても、情報管理上の問題を起こしてしまっては意味がありません。

自分ならこんな流れで使う

テスト観点を生成AIで考える場合、自分なら次のような流れで使います。

  1. 対象機能と変更内容を整理する

  2. AIに大きなテスト観点を出してもらう

  3. 不要な観点を削る

  4. システム固有の観点を追加する

  5. 重要な観点を詳細化する

  6. AIに抜けがないかレビューさせる

  7. 最後に人が確認する

ポイントは、

AIに最終判断を任せないこと

です。

AIは観点を広げたり、別の視点を出したりするのには便利ですが、

「この製品で本当に重要なのは何か」

を判断するのは、まだ人の役割だと思います。

AIはテスト設計の「代わり」ではなく「補助」として使う

生成AIを使うと、テスト観点を考えるスピードはかなり上げられます。

特に、

  • 最初のたたき台を作る

  • 別の視点を追加する

  • 自分の観点をレビューする

  • 観点を整理する

といった使い方は便利です。

一方で、

AIが出したものをそのままテスト仕様にする

という使い方には注意が必要です。

前の記事でも書きましたが、AIの回答を評価するためには、やはりテストの基礎知識が必要になります。

AIを使うことでテストエンジニアの仕事がなくなるというより、

AIを使いながら、どこを確認すべきか判断する力がより重要になる

のではないかと考えています。

生成AIは、テスト設計を全部任せる相手ではなく、

一緒に観点を広げるための補助役

くらいに考えるのが、今のところ一番使いやすいと思います。

次回は、この流れをもう少し実践的にして、

「生成AIにテスト観点を出してもらうプロンプトの作り方」

についてまとめてみたいと思います。

JSTQB FLのシラバスを生成AIで理解する方法――ChatGPTを学習補助に使うコツ

JSTQB Foundation Levelを勉強するうえで、公式シラバスは避けて通れません。

前回の記事でも、まずシラバス全体を確認して、参考書と行き来しながら理解していく方法について書きました。

ただ、実際にシラバスを読んでみると、

「文章としては読めるけれど、意味が頭に入ってこない」

「この用語は、実務では何に当たるのだろう」

「似たような言葉が出てきて違いが分からない」

と感じる部分もあると思います。

こういうとき、ChatGPTなどの生成AIはかなり便利な学習補助になります。

ただし、AIに答えを教えてもらって、それをそのまま覚える使い方ではありません。

個人的には、

分からない内容を、自分が理解できる形に言い換えてもらう

ために使うのがよいと思っています。

シラバスをそのまま理解しようとすると難しいことがある

JSTQBのシラバスは、試験範囲や学習内容を体系的に整理した文書です。

そのため、参考書のように最初から初心者向けに噛み砕いて説明されているとは限りません。

特に初めてソフトウェアテストを体系的に勉強する場合、

「言葉の意味はなんとなく分かるけれど、具体的なイメージができない」

ということがあります。

逆に、実務経験がある人の場合でも、

「普段やっていることとJSTQBの用語が結びつかない」

ということがあります。

そこで使いやすいのが生成AIです。

まずは「初心者向けに説明して」と聞いてみる

一番簡単なのは、理解しにくい内容を貼り付けて、

「初心者にも分かるように説明してください」

と聞く方法です。

例えば、

以下の内容を、JSTQB FLを初めて勉強する人にも分かるように説明してください。
専門用語をできるだけ簡単な言葉に置き換えてください。

という形です。

これだけでも、シラバスそのままの文章より理解しやすくなることがあります。

さらに、

3行程度で要点をまとめてください。

と付け加えると、まず大まかな意味をつかむのにも使えます。

最初から細かいところまで理解しようとせず、

「この項目では何を言っているのか」

を把握する目的で使うとよいと思います。

具体例を出してもらう

個人的に、JSTQBの学習で生成AIが特に便利だと思うのが、

具体例を出してもらう使い方

です。

文章だけでは分かりにくい内容でも、実際のシステムに置き換えると理解しやすくなることがあります。

例えば、

この内容を、Webサービスのログイン機能を例にして説明してください。

あるいは、

ECサイトを例にして説明してください。

と聞いてみます。

自分が普段扱っているシステムに近いものを指定してもよいと思います。

例えば通信機器を扱っているのであれば、

ネットワーク機器の設定画面を例にして説明してください。

という聞き方もできます。

自分が知っているシステムに置き換えることで、抽象的な説明と実務のイメージがつながりやすくなります。

似た用語の違いを比較してもらう

JSTQBを勉強していると、

「この二つは何が違うのだろう」

と思う用語が出てきます。

そういう場合には、AIに比較してもらう方法が使いやすいです。

例えば、

○○と△△の違いを、初心者にも分かるように説明してください。
最後に表形式で違いを整理してください。

と聞きます。

単独でそれぞれの意味を調べるよりも、並べて比較したほうが違いが分かりやすくなることがあります。

さらに、

実務ではそれぞれどのような場面で使われるか、例を付けてください。

と追加すると、より理解しやすくなります。

自分の理解が合っているか確認する

もう一つ便利なのが、

自分の理解をAIに説明して確認する

使い方です。

例えば、

私は○○について、
「~~という意味だと理解しています」
JSTQB FLの考え方として、間違っている点や不足している点があれば指摘してください。

という形です。

単にAIの説明を読むだけではなく、一度自分の言葉にしてから確認するのがポイントです。

実際に説明しようとすると、

「分かったつもりだったけれど、説明できない」

という部分が見えてきます。

これはAIを使わなくても有効な勉強方法だと思いますが、AIが相手なら気軽に何度でも確認できます。

小テストを作ってもらう

ある程度理解できたら、確認問題を作ってもらう方法もあります。

例えば、

今説明した内容について、JSTQB FLを勉強している人向けの確認問題を5問作ってください。
まず問題だけを表示して、答えは最後にまとめてください。

と聞きます。

あるいは、

私が回答するまで正解を表示しないでください。

として、1問ずつ出してもらうこともできます。

ただし、ここで注意したいのは、

AIが作った問題を、本番試験と同じレベルの問題だと思わないこと

です。

生成AIは学習内容の理解を確認するためには便利ですが、実際の出題傾向や正式な問題形式を完全に再現できるわけではありません。

あくまで復習用として使うのがよいと思います。

間違えた問題の解説にも使える

問題集などを解いていて、解説を読んでも理解できない場合にもAIは使えます。

例えば、

この問題で私はAを選びましたが、正解はCでした。
なぜAではなくCなのか、初心者にも分かるように説明してください。

という聞き方です。

さらに、

私が間違えた原因として考えられる理解不足も教えてください。

と聞くと、

「どこを勘違いしていたのか」

まで整理できます。

単に正解を覚えるよりも、

なぜ間違えたのかを理解する

ほうが、次に似た問題が出たときに対応しやすくなります。

AIの回答をそのまま正解だと思わない

ここは重要です。

生成AIは、とても自然な文章で説明してくれます。

そのため、間違った内容でも正しそうに見えることがあります。

JSTQBを勉強するときは、

AIの回答を最終的な正解にしない

ことが大切だと思います。

自分の場合なら、

  1. シラバスを読む

  2. 分からなければAIに聞く

  3. AIの説明で理解する

  4. もう一度シラバスに戻る

という使い方をします。

AIの説明を読んで終わるのではなく、

「なるほど。ではシラバスではどう書かれているのか」

と戻って確認します。

最終的な基準は、あくまで公式シラバスです。

シラバスの文章を大量に貼り付ける必要はない

生成AIを使うとき、シラバス全体を一度に読み込ませたくなるかもしれません。

ただ、個人的には細かく区切ったほうが使いやすいと思います。

例えば、

今日勉強している項目だけ

を対象にして、

「この部分を説明して」

「具体例を出して」

「理解できたか確認する問題を作って」

と進めます。

一度に大量の内容を扱うよりも、

理解する単位を小さくする

ほうが、自分がどこまで理解できているのかも確認しやすくなります。

実際に使えるプロンプト例

最後に、自分ならJSTQB FLの学習で使いやすいと思う指示をまとめておきます。

内容を簡単に説明してもらう

以下の内容を、JSTQB Foundation Levelを初めて勉強する人にも分かるように説明してください。
専門用語は必要に応じて簡単な言葉に言い換えてください。
最後に重要なポイントを3つにまとめてください。

実務の例で説明してもらう

以下の内容を、実際のソフトウェア開発やテストの例を使って説明してください。
抽象的な説明ではなく、具体的なシステムや機能を例にしてください。

用語を比較する

○○と△△の違いを、JSTQB FLを勉強している初心者向けに説明してください。
それぞれの特徴、違い、実務での例を表にまとめてください。

自分の理解を確認する

○○について、私は「~~」という意味だと理解しています。
JSTQB FLの考え方として間違っている点、不足している点、誤解しやすい点があれば指摘してください。

確認問題を作る

この内容について理解できているか確認したいので、確認問題を5問作ってください。
私が回答してから、正解と解説を表示してください。

間違えた理由を確認する

この問題で私はAを選びましたが、正解はCでした。
なぜAではなくCなのか説明してください。
また、私がどの部分を誤解していた可能性があるかも教えてください。

AIは「答えを出す道具」より「理解する道具」として使う

生成AIを使えば、JSTQBの勉強をかなり楽にできる部分があります。

ただ、

「試験の答えをAIに教えてもらう」

という使い方だけでは、テストについて理解したことにはなりません。

個人的には、

分からない文章を言い換えてもらう

具体例を作ってもらう

似た言葉を比較する

自分の理解を確認する

といった使い方のほうが、JSTQBの勉強には向いていると思います。

前回の記事でも書きましたが、JSTQB FLの勉強では、

「次に何を勉強すればよいか」で迷わない状態を作ること

も重要です。

そこに生成AIを組み合わせることで、

「分からないから先に進めない」

という時間を減らせると思います。

ただし、最後は必ず公式シラバスに戻って確認する。

この使い方を意識しておけば、生成AIはJSTQB FLの学習を助けてくれる便利な道具になると思います。

次回は、資格学習から少し実務側に戻って、

「AIでテスト観点を出すときの注意点」

について考えてみたいと思います。

JSTQB FLの勉強は何から始めるべきか――最初に迷わないための進め方

前回の記事では、生成AIが使える時代でもJSTQB FLを学ぶ意味について考えてみました。

では、実際にJSTQB Foundation Levelを勉強しようと思ったとき、何から始めればよいのでしょうか。

JSTQBの公式サイトを見るとシラバスがあります。

参考書もあります。

問題集や模擬問題もあります。

最近であれば、ChatGPTなどの生成AIを学習に使うこともできます。

選択肢が多いので、初めて勉強する人ほど、

「結局、最初に何をやればいいのか」

で迷いやすいと思います。

個人的には、最初からすべてを理解しようとするよりも、

全体像をつかむ → 内容を理解する → 問題を解く → 分からないところに戻る

という順番で進めるのが分かりやすいと思っています。

まずはシラバスの存在を確認する

JSTQB FLを勉強するのであれば、まず確認しておきたいのが公式のシラバスです。

Foundation Levelの試験は、このシラバスをもとに出題されます。

そのため、参考書だけを読んで終わりにするのではなく、最終的にはシラバスの内容を理解していく必要があります。

ただし、最初からシラバスを一字一句理解しながら読み進める必要はないと思います。

初めて読むと、用語が多く、

「読んではいるけれど頭に入ってこない」

という状態になりやすいからです。

最初は、

「こういう内容を勉強する資格なんだな」

くらいの感覚で、章立てや全体のボリュームを確認するだけでも十分だと思います。

次に、参考書で全体像をつかむ

シラバスを確認したら、次は参考書などを使って全体像をつかみます。

シラバスは試験範囲を定義するための文書なので、必ずしも初心者向けの読み物として書かれているわけではありません。

その点、参考書では図や具体例を使って説明されているため、最初の理解には使いやすいと思います。

これからJSTQB FLの勉強を始めるのであれば、まず候補にしやすいのが、

『ソフトウェアテスト教科書 JSTQB Foundation 第5版 シラバス2023対応』

です。

JSTQB公式サイトでもFoundation Levelの認定書籍として紹介されている参考書で、現在のシラバスに対応しています。

個人的にも、最初にシラバスだけを読み込むより、こうした参考書で内容の全体像をつかんでからシラバスに戻るほうが理解しやすいと思います。

最初の1周では、すべてを暗記する必要はありません。

  • どのような内容があるのか

  • 聞いたことのない用語は何か

  • 自分が理解できている部分はどこか

  • 難しそうな部分はどこか

を確認するくらいで十分です。

最初の1周で完璧を目指してしまうと、なかなか先に進めなくなります。

まず最後まで進んでみることのほうが大切です。

※以下の参考書リンクにはアフィリエイトリンクを含みます。


ソフトウェアテスト教科書 JSTQB Foundation 第5版 シラバス2023対応

シラバスと参考書を行き来する

参考書で全体像が分かってきたら、シラバスに戻ります。

この段階になると、最初にシラバスを見たときよりも内容が読みやすくなっているはずです。

参考書で説明されていた内容が、

「シラバスではこう書かれているのか」

とつながってきます。

個人的には、

参考書だけ

あるいは

シラバスだけ

で勉強するより、両方を行き来したほうが理解しやすいと思います。

参考書で理解して、シラバスで確認する。

シラバスで分からない部分があれば、参考書に戻る。

この繰り返しです。

ある程度進んだら、問題を解いてみる

内容をすべて覚えてから問題演習を始めようとすると、なかなか問題を解く段階まで進めません。

ある程度勉強したら、一度問題を解いてみたほうがよいと思います。

問題を解くことで、

「分かったつもりだったところ」

が見えてくるからです。

説明を読んでいると理解できているように感じても、実際に問題になると迷うことがあります。

間違えた問題があれば、正解だけを覚えるのではなく、

なぜその答えになるのか

をシラバスや参考書に戻って確認します。

この繰り返しをすると、少しずつ知識がつながってきます。

分からない言葉は、そのままにしない

JSTQBを勉強していると、普段の仕事ではあまり意識して使っていなかった言葉も出てきます。

実務経験がある人でも、

「やっていることは分かるけれど、正式な用語として説明しようとすると難しい」

ということがあります。

逆に、初めてテストを勉強する人の場合は、用語そのものが分からないこともあります。

そういう言葉を放置すると、その後の説明も理解しにくくなります。

参考書や用語集を確認して、

その言葉が何を意味しているのかを自分の言葉で説明できる程度まで整理する

ことが重要だと思います。

生成AIは「分からないところを聞く」ために使いやすい

最近であれば、ここで生成AIを使う方法もあります。

例えばシラバスを読んでいて意味が分からない部分があれば、

「初心者にも分かるように説明して」

「具体例を使って説明して」

「○○と△△の違いを説明して」

と聞くことができます。

単に答えを教えてもらうのではなく、理解するための補助として使うイメージです。

ただし、生成AIの回答が必ず正しいとは限りません。

最終的な確認は公式シラバスに戻るようにしたほうがよいと思います。

この使い方については、次の記事で、

「JSTQB FLのシラバスをAIで理解する方法」

として、もう少し具体的に整理してみる予定です。

最初から学習計画を細かく作りすぎなくてもいい

もう一つ迷いやすいのが、

「毎日どこまで勉強すればいいのか」

ということです。

仕事をしながら資格の勉強をする場合、勉強できる時間は日によって変わります。

最初から細かすぎる計画を作ると、1日遅れただけで予定が崩れてしまうこともあります。

まずは、

  1. 全体像をつかむ

  2. 各分野を理解する

  3. 問題を解く

  4. 苦手な部分を復習する

という大きな流れを決めておけばよいと思います。

そのうえで、自分が試験を受ける日から逆算して、少しずつ具体的な予定にしていく方法が進めやすいです。

迷ったら「何を勉強するか」を先に決める

JSTQB FLの勉強で意外と時間を使うのが、

「今日は何をやろうか」と考えている時間

ではないかと思います。

参考書を読むのか。

シラバスを読むのか。

問題を解くのか。

復習するのか。

その日の勉強を始めるたびに考えていると、なかなか習慣化できません。

自分としては、

勉強を始める前に、ある程度順番を決めておく

ことが重要だと思っています。

JSTQB FLの場合であれば、

シラバスを確認する
→ 参考書で全体像をつかむ
→ 各分野を理解する
→ 問題を解く
→ 間違えた部分を復習する

という流れを一つの基本形にしておけば、迷いにくくなります。

まとめ

JSTQB FLを勉強しようと思ったとき、最初から難しく考える必要はありません。

まず公式シラバスで全体を確認する。

参考書で理解しやすい形にする。

問題を解いて理解度を確認する。

分からない部分はシラバスや参考書に戻る。

必要であれば生成AIも補助的に使う。

この流れを繰り返していけばよいと思います。

大切なのは、最初から完璧に理解することよりも、

「次に何を勉強すればよいか」で迷わない状態を作ること

です。

次回は、今回少し触れた、

「JSTQB FLのシラバスを生成AIで理解する方法」

について、実際の使い方を考えてみたいと思います。

AI時代でもJSTQB FLを学ぶ意味――生成AIがあってもテストの基礎が必要だと思う理由

前回の記事では、「テストエンジニアはAIに代替されるのか」というテーマについて考えてみました。

生成AIを使えば、テスト観点を出したり、テストケースのたたき台を作ったりすることは、以前よりかなり簡単になっています。

そうなると、次に気になるのが、

「今からJSTQB FLを勉強する意味はあるのか?」

ということではないでしょうか。

AIがテストケースまで考えてくれるのであれば、わざわざテストの基礎を勉強する必要はないようにも見えます。

ただ、実際に生成AIを使ってみると、個人的にはむしろ逆だと感じています。

AIを使える時代だからこそ、出てきた回答を判断するための基礎知識が、これまで以上に重要になってくると思います。

AIにテスト観点を出してもらうこと自体は難しくない

ChatGPTなどの生成AIに、

「この機能についてテスト観点を出してください」

と入力すると、かなりそれらしい回答が返ってきます。

仕様をもう少し詳しく与えれば、

  • 正常系

  • 異常系

  • 境界値

  • 入力チェック

  • エラー処理

  • 権限

  • 性能

など、幅広い観点を挙げてもらうこともできます。

ゼロから自分で考えるよりも、最初のたたき台をAIに作ってもらったほうが効率がよい場面は確実に増えていると思います。

自分も、生成AIはテスト業務とかなり相性がよいと感じています。

ただし、ここで一つ問題があります。

AIが出してきたテスト観点が、本当に正しいのかを誰が判断するのか。

という点です。

AIの回答は、そのまま使えるとは限らない

生成AIの回答は、きれいに整理されていることが多いため、一見すると十分な内容に見えます。

しかし実際には、

「重要な観点が抜けている」

「似たようなテストケースが重複している」

「このシステムでは重要ではない観点が含まれている」

「仕様上、本当に確認すべき条件を拾えていない」

といったことがあります。

AIが10個のテストケースを出してきたとしても、その10個をそのまま実行すればよいわけではありません。

何を残すのか。

何を削るのか。

何を追加するのか。

どこを重点的に確認するのか。

最終的には、人が判断する必要があります。

そして、その判断をするためには、やはりソフトウェアテストについての基礎知識が必要になります。

JSTQB FLは、テストの考え方を整理する入口になる

JSTQB Foundation Levelでは、ソフトウェアテストについての基本的な考え方を体系的に学ぶことができます。

もちろん、資格を取得すること自体にも一定の意味はあります。

ただ、個人的にはそれ以上に、

テストについて考えるための共通言語を整理できること

に価値があると思っています。

実務を続けていると、経験的にやっていることが増えてきます。

「ここは念のため確認しておこう」

「この値の前後は見ておいたほうがよさそう」

「この変更なら、ここまで影響しそう」

といった判断です。

こうした感覚を、体系的な知識と結びつけて整理できるのがJSTQBを学ぶメリットの一つだと思います。

特に、これからテスト業務を始める人の場合、実務だけで断片的に覚えていくよりも、一度テストの全体像を学んでおくことで、その後の理解がしやすくなると思います。

AIへの指示も、基礎知識があるほうが具体的になる

テストの基礎を知っていると、AIへの指示も変わってきます。

単純に、

「テストケースを作って」

とお願いするだけではなく、

「境界値を意識して確認してほしい」

「状態遷移を考慮してほしい」

「リスクの高い部分を優先してほしい」

「この条件の組み合わせに漏れがないか確認してほしい」

といった形で、より具体的にAIを使えるようになります。

つまり、テストの知識は自分でテストケースを書くためだけに必要なのではありません。

AIに何を考えさせるかを決めるためにも必要になる

ということです。

AIが高性能になればなるほど、人間側には「何を聞くべきか」「出てきた答えをどう評価するか」が求められるようになるのではないかと思います。

「AIかJSTQBか」ではない

AIの登場によって、

「テストの基礎を勉強する」

ことと、

「生成AIを使う」

ことが対立するように見えることがあります。

ただ、自分はこの二つは対立するものではないと考えています。

JSTQBなどでテストの基本的な考え方を理解したうえで、生成AIを使って作業を効率化する。

この組み合わせのほうが、実務では使いやすいはずです。

AIにすべて任せるのではなく、

AIに案を出してもらい、人が評価して修正する。

今後のテスト業務では、このような使い方が増えていくのではないでしょうか。

その「評価する側」に回るためにも、テストの基礎を学んでおく意味はまだ十分にあると思います。

これからJSTQB FLを勉強するなら

一方で、JSTQB FLを勉強しようと思っても、最初は意外と迷います。

シラバスから読むべきなのか。

参考書を先に読むべきなのか。

問題集はいつ始めるのか。

どこまで理解すればよいのか。

試験勉強を始めようとして、最初の段階で手が止まってしまう人もいると思います。

個人的には、最初から細かいところまで理解しようとするより、

まず全体像をつかんでから、少しずつ理解を深めていく

ほうが進めやすいと考えています。

次の記事では、

「JSTQB FLの勉強は何から始めるべきか」

について、実際に学習を始めるときの順番を整理してみます。

これからJSTQB FLを受験しようと考えている方の参考になればと思います。

※参考書リンクにはアフィリエイトリンクを含みます。


ソフトウェアテスト教科書 JSTQB Foundation 第5版 シラバス2023対応


徹底攻略 JSTQB Foundation教科書&問題集 シラバス2023対応

 

テストエンジニアはAIに代替されるのか、これから必要になるスキルを考える

AIでテストケースが作れるようになるなら、テストエンジニアの仕事はなくなるのでしょうか。

最近は、そう考えても不思議ではないくらい、AIでできることが増えています。
仕様書を読ませればテスト観点を出してくれますし、テストケースのたたき台も作れます。

ログの要約や、不具合報告の文章化もかなり楽になりました。

では、テストエンジニアはAIに代替されるのでしょうか。

個人的には、一部の作業は置き換わるが、テストエンジニアそのものが不要になるわけではないと考えています。

ただ、求められる役割はかなり変わっていくはずです。むしろ、AIを使ってテスト設計やレビューの質を上げられる人は、これから価値が上がる可能性があります。

AIに置き換わりやすいテスト業務

まず、AIや自動化に置き換わりやすい作業はあります。

たとえば、以下のような作業です。

  • 仕様書からテスト観点を出す

  • テストケースのたたき台を作る

  • テストデータを作る

  • ログを要約する

  • 不具合報告の文章を整える

  • 回帰テストを自動実行する

  • 定型的なレビュー観点を洗い出す

こうした作業は、これまで人が時間をかけてやっていた部分です。
特に「まず一覧を作る」「文章を整える」「過去のパターンから候補を出す」といった作業は、AIとかなり相性がよいです。

実際、仕様書をAIに渡して「この機能のテスト観点を出してください」と依頼すると、それなりに使えそうな観点が出てきます。

もちろん、そのまま使えるわけではありません。
ただ、ゼロから考えるよりは、最初のたたき台として十分に役立ちます。

それでも人が必要な理由

では、AIがテスト観点やテストケースを作れるなら、人は何をするのか。

ここが重要だと思っています。

AIが出したテストケースに対して、

  • その観点は本当に必要なのか

  • 重要なリスクが抜けていないか

  • 仕様の前提が間違っていないか

  • 現場の制約に合っているか

  • テストする順番は適切か

  • その結果で品質を説明できるか

を判断するのは、まだ人の役割です。

AIはもっともらしい回答を出します。
ただし、もっともらしいことと、正しいことは別です。

特にテストでは、「何を確認するか」だけでなく、「なぜそれを確認するのか」が重要です。
この理由を説明できないと、テストケースの数だけ増えて、結局どこを重点的に見ればよいのか分からなくなります。

これから価値が上がるテストエンジニア

AI時代に価値が上がるのは、単に手順通りにテストを実行する人ではなく、以下のような人だと思います。

  • 仕様の曖昧さに気づける人

  • リスクの高い箇所を判断できる人

  • テスト設計の考え方を持っている人

  • AIが出した内容をレビューできる人

  • 自動化すべきところと、人が見るべきところを分けられる人

  • 品質状況を説明できる人

つまり、テストを「作業」として見るのではなく、品質を確認するための設計として考えられる人です。

AIが便利になるほど、逆にこの基礎力が重要になる気がしています。

AIを使う側に回るには、テストの基礎が必要

AIにテスト観点を出してもらうだけなら、誰でもできます。

しかし、良い結果を出すには、AIへの指示もそれなりに工夫が必要です。

たとえば、

  • 正常系と異常系を分けて出す

  • 境界値を含める

  • 状態遷移を考慮する

  • リスクが高い順に並べる

  • 仕様の曖昧な点を質問させる

  • レビュー観点として不足を指摘させる

といった指示ができるかどうかで、AIの出力はかなり変わります。

そして、こうした指示を出すには、テスト技法やテスト設計の基本を理解している必要があります。特別な最新技術というより、まずはテストの考え方という共通言語です。AIを使うためにも、結局はテストの基礎が必要になります。

JSTQB FLは基礎整理に使える

テストの基礎を整理する方法の一つとして、JSTQB Foundation Levelがあります。

JSTQB FLは、資格そのものが目的というより、以下を体系的に整理する入口として使いやすいです。

  • テストの目的

  • テストの基本原則

  • テストプロセス

  • レビュー

  • テスト技法

  • テスト管理

  • 欠陥管理

  • テストツール

実務でテストをしていると、なんとなく理解していることも多いです。
ただ、それを試験用語として整理しようとすると、意外と抜けがあります。

たとえば、普段「テスト項目」と呼んでいるものも、JSTQBの文脈では、テスト条件、テストケース、テスト手順、テストデータなどに分けて考える必要があります。

このあたりを整理しておくと、AIにテスト設計を手伝わせるときにも指示が出しやすくなります。

まずは1冊、基礎を整理する本を決める

いきなり複数の本や教材を行ったり来たりすると、何を覚えればよいのか分かりにくくなります。AIや自動化を学ぶ前に、まずテストの基礎を整理しておくと進めやすいです。

参考書を読むときは、単に暗記するのではなく、

  • 実務でやっていることはどの用語に当たるのか
  • 自分の現場で不足している考え方は何か
  • AIに任せられそうな作業はどこか
  • 人が判断すべきポイントはどこか

を考えながら読むと、資格対策だけでなく実務にもつながります。

まずはJSTQB FL向けの参考書を1冊決めて、シラバスと対応させながら読むのが進めやすいと思います。最初から複数の教材を広げるより、「この1冊を軸にする」と決めた方が、勉強の順番で迷いにくくなります。

※参考書リンクにはアフィリエイトリンクを含みます。


ソフトウェアテスト教科書 JSTQB Foundation 第5版 シラバス2023対応


徹底攻略 JSTQB Foundation教科書&問題集 シラバス2023対応

 

AI時代のテストエンジニアに必要な学習順序

個人的には、これからのテストエンジニアは、以下の順番で学ぶとよいと考えています。

  1. ソフトウェアテストの基礎を理解する

  2. JSTQB FLなどで用語と考え方を整理する

  3. テスト設計やレビューの考え方を身につける

  4. AIを使ってテスト観点や確認問題を作る

  5. 自動化できる部分を見極める

  6. AIや自動化の結果をレビューできるようにする

いきなりAIや自動化から入るより、まずはテストの基礎を整理した方が、結果的に遠回りにならないと思います。

AIが出したテストケースを見て、「それっぽい」で終わるのか。
それとも、「この観点が足りない」「ここはリスクが低い」「この条件は分けた方がよい」と判断できるのか。

この差は大きいです。

まとめ

テストエンジニアの仕事は、AIによって変わっていくと思います。

特に、テストケース作成のたたき台、ログ要約、不具合報告の文章化、定型的な確認作業は、AIや自動化に置き換わっていく可能性があります。

一方で、以下のような部分は、今後も人の価値が残ると考えています。

  • 何を重点的に確認すべきかを決める

  • 仕様の曖昧さを見つける

  • AIが出した内容をレビューする

  • 自動化すべき範囲を判断する

  • 品質リスクを説明する

そのためには、AIを使うスキルだけでなく、テストの基礎も必要です。

JSTQB FLは、AI時代にテストエンジニアとして価値を出すための、基礎整理の入口として使えると思います。

 

次回は、「AI時代でもJSTQB FLを学ぶ意味」について整理します。

AIでテスト観点やテストケースのたたき台を作れるようになってきましたが、それをそのまま使えるかどうかは別の話です。AIを使う側に回るためにも、テストの基礎をどう学ぶかについて、JSTQB FLの学習方法とあわせて考えていきます。

機械学習の種類

2023.08.13更新

機械学習の種類

機械学習には教師データを使う学習方法と使わない学習方法があります。

機械学習の手法

それぞれの基本的な内容を説明します。

 

 

手法の簡易説明

それぞれの手法について、簡単な説明をします。

 

人工知能の概要と歴史

ChatGPTの出現から身近になってきた人工知能(AI: artificial intelligence)の概要と歴史を整理していきます。

ニューラルネットワークについては、こちらの動画が参考になります。

Deep Learning入門:ニューラルネットワーク設計の基礎 - YouTube

 

最近の動向

最近有名になっている生成系AIには、以下のような文章生成AIや画像生成AIがあります。

第四次AIブーム突入でしょうか。

  • 画像生成AI
    Midjourney

    MidjourneyはDiscordのコミュニティに参加してチャットすることで利用が可能です。
    Discord