JSTQB認定テストの勉強を始めるにあたって、とりあえずWEB上で無料で読めるシラバス。
でもシラバスは学術的な表現で書かれているため、最初は読みにくく感じるかもしれません。
そこで、まずは全体像を把握できるように、各項目の内容をざっくりとまとめました。こちらを読んでから本文に進むと、理解しやすくなると思います。
また、テスト勉強に役立つ(かもしれない)「シラバスの読み方のコツ」も紹介しています。
シラバス概要
Core Foundation FLシラバスはこちら↓
https://jstqb.jp/dl/JSTQB-SyllabusFoundation_VersionV40.J02.pdf
全体像を把握するには、まず 14ページ目 0.11本シラバスの構成 を眺めてみると良いと思います。
第1章 テストの基礎
第 1 章:テストの基礎-学習時間 180 分
・テストに関わる基本的な原理、テストが必要となる理由、テスト目的について学ぶ。
・テストプロセス、主なテスト活動、テストウェアを理解する。
・テストに必要不可欠なスキルを理解する。
第1章ではテストの目的をスタート地点として、テスト手法に関する細かい話以外を総括している感じです。
どういった目的でテストをするのか、テストをするとどんな良いことがあるのか、なぜテストが必要なのかという根本的な話の他、実際にソフトウェアテストをするとなった時にどんなことが必要なのか、例えば以下
- テスト計画立てようね
- どこまでテストが進んでいるか進捗管理も必要だよ
- そもそも何をどうやってテストする?
- テスト結果はどうなるのが正解?それを正解とする根拠は何?
- 誰がどんな役割を担うのか
- 成果物は何か(テストで使用するものや作成したものなど)
こういうことを考える必要があるよね、という指針が示されています。
その中で、専門用語的な言葉が色々出てくるので、慣れないうちはすんなり頭に入ってこないかもしれません。
特に、「テストが必要な理由とテストの成果物」「テストというものの性質」「テストプロセス」あたりは相互に関連しあっているので、各項目を行ったり来たりしながら全体の関連を見るようにすると腑に落ちるかと思います。単品だと暗記物になってつらいです。
一読してわけがわからなかったら一旦飛ばして、他の章を勉強してから戻ってきた方が良いと思います。
第2章 ソフトウェア開発ライフサイクル全体を通してのテスト
第 2 章:ソフトウェア開発ライフサイクル全体を通してのテスト-学習時間 130 分
・さまざまな開発アプローチへテストをどのように組み込むかを学ぶ。
・テストファーストアプローチの考え方や、DevOps の考え方を学ぶ。
・テストレベルの違い、テストタイプの違い、保守テストについて学ぶ。
ソフトウェア開発のどの段階でどんなテストがあり得るのか、のまとめです。以前はウォーターフォールモデルの開発を中心に説明されていましたが、2023年版ではアジャイルやDevOpsについの記述が増えていました。
ソフトウェア開発ライフサイクル(SDLC)というのはソフトウェアを計画・設計・開発・テスト・運用・保守するまでの一連のプロセスとして体系化したフレームワークです。いろいろなモデルがありますが、わかりやすいのはウォーターフォールモデルだと思います。これは各段階を順番に進める、わりと古くからある手法で、これをベースにして他のイテレーティブ開発モデルやアジャイル型はどう違うのかを研究するとわかりやすいと思います。
この章ではテスト駆動開発やDevOpsについても触れられているので、覚える内容はたくさんあるかも。シラバスを読んだだけでは実態がよくわからないものもあると思うので、そういうものはWebサイトを検索して調べながら読み進むと良いと思います。
SDLCという言葉はシラバス全体でよく出てきます。ここで各SDLCについてしっかり理解しておくと後の話も分かりやすくなります。
第3章 静的テスト
第 3 章:静的テスト-学習時間 80 分
・静的テストの基本、フィードバックやレビュープロセスについて学ぶ。
第3章と4章はテスト手法・技法の話です。第3章は静的テストについて。
静的テストは動かさないでやるテスト、レビューや静的解析です。テストというと実際に動かして行う動的テストに焦点が当てられがちですが、実は静的テストは結構大切だったりします。
というのも、静的テストはプログラムが実際に動かせるようになる前から実施できるので、より早い段階で不具合を検出することができます。早い段階でわかれば、修正も用意で手戻りも少なく、お得、というわけです。
また、この章ではレビューの種類についても解説されています。形式の定まった、正式なレビューの話や、もっと気軽なレビューなど、レビューの種類についてはきちんと覚えましょう。
第4章 テスト分析と設計
第 4 章:テスト分析と設計-学習時間 390 分
・ブラックボックス、ホワイトボックス、経験ベースのテスト技法を適用し、さまざまなソフトウェア作業成果物からテストケースを導き出す方法を学ぶ。
・コラボレーションベースのテストアプローチについて学ぶ。
第4章でいわゆるテスト技法を紹介しています。
テストの資格試験、というので私がまず想像したのはこのへんの内容でした。
「テスト技法」というのは「何をテストするか」「どのようにテストするか」というのを決めるときに役立つ理論というか考え方みたいなものです。
テストケースを作るときに気を付けるのは「漏れなく・無駄なく」ということだと思うのですが、漏れなくしようとするとケース数が増える、ケース数が多すぎると実施しきれない(コストがかかりすぎる)という問題があります。これをいい感じにまとめたり間引いたりするのに役立つのがテスト技法です。
シラバスでは ブラックボックス・ホワイトボックス・経験ベース に分けて解説してあります。また、「コラボレーションベースのアプローチ」としてアジャイルの話が入っています。
どの技法も実際にテストケースを作成するうえでベースになる考え方だと思います。テストにもよく出るのでしっかり勉強しましょう。
それぞれの技法について、シラバスの説明だけだとわかりにくいところがありますが、技法名で検索すればわかりやすい解説をしているページがたくさん見つかるので、そういうものをいくつか読んでみることをお勧めします。
第5章 テスト活動のマネジメント
第 5 章:テスト活動のマネジメント-学習時間 335 分
・一般的なテストの計画方法、テスト工数の見積り方法を学ぶ。
・リスクがテスト範囲にどのような影響を与えるかを学ぶ。
・テスト活動をモニタリングし、コントロールする方法を学ぶ。
・構成管理がどのようにテストを支援するかを学ぶ。
・欠陥を明確に理解しやすく報告する方法を学ぶ。
この章では、テストを実施する担当者より、テストをリードするテストマネージャの役割についてがメインになっています。
テストマネージャの役割として、「どこまでテストするかを決める」というものがあります。ここまでやったら十分、リリースOK(あるいはNG)と判断する(または判断材料を与える、助言する)という役割です。
ソフトウェアテストでは「全数テストは不可能」「テストで欠陥がないことを示すことはできない」といわれていますが、ではどこまでやれば「十分なテスト」といえるのか?これはたぶん、本当は答えのない問いです。だからテストマネージャはどこまでやればいいことにするのかを決めなければなりません。
実際問題として、この決定にかかわってくるのは「コスト」「リスク」「納期」になります。
そういった見方をすると、この章で扱われている内容が腑に落ちるのではないでしょうか。
テスト工数の見積もりは「コスト」、リスクマネジメントはそのまま「リスク」、テスト活動のモニタリングとコントロールは「納期」です。
こうした活動を助けるものとして、構成管理や欠陥マネジメントを考えると、5章全体がすんなり頭に入るのではないでしょうか。
第6章 テストツール
第 6 章:テストツール-学習時間 20 分
・ツールの分類を学び、テスト自動化のリスクと利点を理解する
こんなテスト支援ツールがあるよ、という紹介で、様々なツールがリストアップされています。テスト自動実行ツールや、テスト管理ツールなどの他、DevOpsツールやコラボレーションツールなど。
また、テスト自動化のメリット・デメリットなどについても書かれています。
終わりに
会社から「JSTQB認定テストを受けてきて~」といわれて、とりあえずファウンデーションレベル(FL)を受けたのは2016年09月のこと。その翌年続けてテストアナリストも取得しましたが、それからもうすぐ10年たちます。
今回、新しいFLシラバス(2023年版)の内容でまとめましたが、ちょっとアジャイル関係のことが増えた以外、基本的なところは変わりないなと思いました。
[ISTQBテスト技術者資格制度
Foundation Level シラバス 日本語版 Version 2023V4.0.J02] (https://jstqb.jp/dl/JSTQB-SyllabusFoundation_VersionV40.J02.pdf)