【受験レポート】JSTQB Foundation Level試験を受験しました！

# はじめに
## JSTQB Foundation Level試験とは
### JSTQBとは
>
JSTQBとは、日本におけるソフトウェアテスト技術者資格認定の運営組織で、 各国のテスト技術者認定組織が参加しているISTQB（International Software Testing Qualifications Board）の加盟組織として2005年4月に認定されています。
引用 : http://jstqb.jp/committee.html

### JSTQB Foundation Levelの内容
>
- 第1章：テストの基礎
    - テストに関連する基本的な原則、テストが必要な理由、テスト目的、テストを成功させるための原則を学習する。
    - テストプロセス、主要な活動、作業成果物について理解する。
- 第2章：ソフトウェア開発ライフサイクル全体を通してのテスト
    - ソフトウェア開発ライフサイクルのすべての段階にテストが組み込まれることを学習する。
    - さまざまなテストレベル、テストタイプ、メンテナンステストで作業する際の影響度分析について学習する。
- 第3章：静的テスト
    - 静的解析やレビュー（非形式的レビュー、ウォークスルー、テクニカルレビュー、インスペクション）など、さまざまな静的テスト技法を学習する。
    - 作業成果物の欠陥を検出するために、レビュー技法の適用方法を学習する。
- 第4章：テスト技法
    - ソフトウェア作業成果物からテストケースを導出するためにテスト技法の適用方法を学習する。
    - ブラックボックス、ホワイトボックス、経験ベースのテストをカバーする。
- 第5章：テストマネジメント
    - テストマネジメントは、特にリスクベースドテスト、テスト実行、欠陥の報告と対応に関して、テスト担当者がテストマネージャーと一緒に作業できることをカバーする。
    - テストで文書化するさまざまな作業成果物（テスト計画やレポートなど）を学習する。
    - 欠陥を明確で理解しやすく報告する方法を学習する。
- 第6章：テスト支援ツール
    - ツールの分類、ツールに付随するリスクとメリット、ツールの選択と導入を行う際の考慮事項を学習する。
- 引用 : http://jstqb.jp/dl/JSTQB-SyllabusFoundation_Overview__Version2018.J01.pdf

## なぜJSTQB Foundation Level試験を受けたのか？
### ソフトウェアテストについてOJTで学ぶには限界がある
私は、新卒から2年半ほど、ソフトウェア品質保証・ソフトウェアテストを担当したが、**ソフトウェアテスト**を**体系的**に学ぶ機会がなく悩んでいた。テスト担当者としてのスキルアップを目指し、ソフトウェアの基礎とドメイン知識を集中的に学んでいたが、テストについては**感覚**で実施しており、成長に限界を感じていた。

### テストについて体系的に学ぶ必要がある！
学習前の私は知らないことがたくさんありました。↓

- ソフトウェアテストの目的は？(欠陥を見つけるだけ？)
- ソフトウェアテストでやるべきことは？(テストを"やる"だけがソフトウェアテストだと考えていた)
- テスト技法とその使い方は？(テスト技法だけをピックアップして勉強したが、実践で使えなかった)
- etc.

### せっかく勉強するなら認定資格とりたい！
シラバスや教科書で勉強するだけでも大変価値ある内容だと思いますが、私の場合↓の理由で受験をすることにしました。

- モチベーションを考えたときに目標(試験合格)があるほうが学習を継続しやすい。
- 資格を持つことで社内で説得力が増す。
- JSTQB AdvancedLevelを受験時の必須条件でもある。

## 今回のブログ内容
以下の人の学習・受験の後押しになるような内容を共有できればと思います。

- 私と同じようにソフトウェアテストを学んでいる方
- JSTQB Foundation Levelの受験を検討中の方


### コンテンツ

- 受験に向けた学習方法
- 当日の流れ
- 学習・受験をおすすめしたい理由
- 今後の目標

# 受験に向けた学習方法は？
## 私のそもそもの知識は？
- 新卒から2年半、ソフトウェア品質保証・ソフトウェアテストを担当
- しかし、ソフトウェアテストについて体系的に学んだことはないレベル
    - 学習前は、↓のブラックボックステスト技法「デシジョンテーブルテスト」とホワイトボックステスト技法「カバレッジテスト」の違いも分からない状態でした。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/516424/497b693f-84ff-cce5-a70a-3597c101b9c8.png)


## どんな教材で勉強したか？

- [FLシラバス(2018年度版)](http://jstqb.jp/syllabus.html)
    - あまり使わなかった。
- [ソフトウェアテスト教科書 JSTQB Foundation 第4版 シラバス2018対応](https://www.amazon.co.jp/gp/product/4798160660/ref=ppx_yo_dt_b_asin_title_o00_s00?ie=UTF8&psc=1)
    - メイン(教科書＋演習問題として)で使用
- [[改訂版] 演習で学ぶソフトウェアテスト特訓150問 ~JSTQB認定テスト技術者資格FoundationLevel対応](https://www.amazon.co.jp/gp/product/4774164690/ref=ppx_yo_dt_b_asin_title_o08_s00?ie=UTF8&psc=1)
    - 最後の追い込みで使用 (用語は旧シラバスベース)
- JSTQB試験(FL) 完全攻略 テスト技術者の友【テス友】
        - 通勤・隙間時間のお供に！
    - [Andoroid版](https://play.google.com/store/apps/details?id=jp.co.vmt.jstqbflapp)
    - [iOS版](https://apps.apple.com/jp/app/jstqb%E8%A9%A6%E9%A8%93-fl-%E5%AE%8C%E5%85%A8%E6%94%BB%E7%95%A5-%E3%83%86%E3%82%B9%E3%83%88%E6%8A%80%E8%A1%93%E8%80%85%E3%81%AE%E5%8F%8B/id867403516)
- 参考にさせていただいたブログ
    - [marc0468さん「JSTQB Foundation LevelとJCSQE 初級のまとめと勉強法」](https://qiita.com/marc0468/items/d09d44c673f0063d0511)
    - [iki122さん「JSTQBを受けるか迷っている方へ」](https://qiita.com/iki122/items/991480c3572362065d33)
    - [rot-zさん「JSTQB 認定テスト技術者資格 Foundation Level試験合格」](https://qiita.com/rot-z/items/bc027913dd8287bdec84)
    - [rueyjyeさん「勉強一ヶ月で ISTQB Foundation Levelを通った話」](https://qiita.com/rueyjye/items/51e51cd4cd412b59df65)

## 学習の日程感？

### 学習時間 2カ月強(9週間) 
(※期間としては3カ月ほど)

- 大雑把に学習期間 (2週間)
    - 全章の内容をざっくり把握(サラ読み)
        - 教材 : [ソフトウェアテスト教科書 JSTQB Foundation 第4版 シラバス2018対応](https://www.amazon.co.jp/gp/product/4798160660/ref=ppx_yo_dt_b_asin_title_o00_s00?ie=UTF8&psc=1)
    - アプリ「テス友」で自分の苦手な章を把握
        - アプリ : JSTQB試験(FL) 完全攻略 テスト技術者の友【テス友】
            - [Andoroid版](https://play.google.com/store/apps/details?id=jp.co.vmt.jstqbflapp)
            - [iOS版](https://apps.apple.com/jp/app/jstqb%E8%A9%A6%E9%A8%93-fl-%E5%AE%8C%E5%85%A8%E6%94%BB%E7%95%A5-%E3%83%86%E3%82%B9%E3%83%88%E6%8A%80%E8%A1%93%E8%80%85%E3%81%AE%E5%8F%8B/id867403516)
- しっかり学習期間 (6週間)
    - 教科書で勉強 (4時間/週)
    - ブログでアウトプット (4時間/週)
        - 1週間に1章のペース
        - 教材 : [ソフトウェアテスト教科書 JSTQB Foundation 第4版 シラバス2018対応](https://www.amazon.co.jp/gp/product/4798160660/ref=ppx_yo_dt_b_asin_title_o00_s00?ie=UTF8&psc=1)
- 最後の追い込み期間（1週間）
    - 演習問題を数解く 
    - 当日の時間配分/問題数で解く
        - 教材:[[改訂版] 演習で学ぶソフトウェアテスト特訓150問 ~JSTQB認定テスト技術者資格FoundationLevel対応](https://www.amazon.co.jp/gp/product/4774164690/ref=ppx_yo_dt_b_asin_title_o08_s00?ie=UTF8&psc=1)・・・最後の追い込みで使用 (用語は旧シラバスベース)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/516424/d34eac67-378d-075b-98e0-e8967a108bf9.png)

- 毎朝の習慣
    - 通勤(電車)時間はテス友で問題を解く(20分)
        - アプリ : JSTQB試験(FL) 完全攻略 テスト技術者の友【テス友】
            - [Andoroid版](https://play.google.com/store/apps/details?id=jp.co.vmt.jstqbflapp)
            - [iOS版](https://apps.apple.com/jp/app/jstqb%E8%A9%A6%E9%A8%93-fl-%E5%AE%8C%E5%85%A8%E6%94%BB%E7%95%A5-%E3%83%86%E3%82%B9%E3%83%88%E6%8A%80%E8%A1%93%E8%80%85%E3%81%AE%E5%8F%8B/id867403516)


## (補足) 
### ブログにまとめました!　(ぜひご参考までに。)

- [【JSTQB FL 】1. テストの基礎](https://qiita.com/naosumi_tech/items/fbf9553eb554c11b8fdd)
- [【JSTQB FL 】2. ソフトウェア開発ライフサイクル全体を通してのテスト](https://qiita.com/naosumi_tech/items/39f0fa4454ce96cd1e7e)
- [【JSTQB FL 】3. 静的テスト](https://qiita.com/naosumi_tech/items/070f22120cb6c4e39058)
- [【JSTQB FL 】4. テスト技法](https://qiita.com/naosumi_tech/items/162bb2af270e737ab406)
- [【JSTQB FL 】5. テストマネジメント](https://qiita.com/naosumi_tech/items/74948ca2c96c1d10f301)
- [【JSTQB FL 】6. テスト支援ツール](https://qiita.com/naosumi_tech/items/e2409c035bfe21ac6aad)

### 受験申込のタイミング
約4カ月前に申込!(受験日2020年2月8日 私の申込日2019年10月19日)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/516424/8020ac1c-3ba3-3a43-feeb-c778b47a3403.png)

# 当日の流れは？

## 受験日 : 2020年2月8日(土)

- 当日スケジュール

| 時間              | 内容                |
|:-----------------:|:------------------:|
| 14:20~15:00       | 入室可能時間 (15:00までに着席) |
| 15:00~15:10       | 試験実施の注意事項説明 (入退室不可) |
|| 配布物(問題用紙、解答用紙、受験控え、アンケート)配布|
|| 問題用紙、解答用紙に記名|
| 15:10~16:10       | 試験(60分) |
|| 問題用紙、解答用紙の回収 |
| 16:10~16:20       |質問票(アンケート)記入後、退出|

- 場所
    - 東京会場：有明TOC (例年?かは不明。)
        - コンビニエンスストアやコーヒーショップありました! 
        - [施設情報参考URL](http://www.toc-ariake.jp/shop.html)
    - 最寄り駅 : 国際展示場駅(徒歩3分)、東京ビッグサイト駅(徒歩4分)、有明駅(徒歩4分)
- 持ち物
    - 受験票（顔写真添付）
    - 筆記用具
    - 時計

## 手ごたえは？…あり！
### しかし、模擬と本番の問題レベルに差があると感じる声も多そう
以下は私個人の感想です。

- 試験時間が予想より足りなかった
    - 模擬 : 30分程度で解答できていた
    - 本番 : 60分ぎりぎりまで解答にかかった (;^_^A
- 試験問題のレベルは学習教材の演習問題と変わらない印象
    - 一方で、設問1つ当たりの整合判断数が多い問題が多かった印象
        - 模擬 : 「単体テストの説明として正しいのはどれか？」
            - 4つの選択肢から単体テストの説明を選べばOK
        - 本番 : 「単体テスト、統合テスト、システムテスト、受け入れテストの説明の組み合わせとして正しいものはどれか？」 
            - 4つのテストレベルの対となる説明文を判断したうえで、選択肢から正しい組み合わせを選択する必要あり。
        - (このような問題が複数あったため、私は試験時間ぎりぎりとなったと考えている。)

# 学習・受験をオススメしたい理由 
## ソフトウェア設計者もソフトウェアテスト初学者も学習・受験をする価値あり！

### ソフトウェアテスト技術の基礎を体系的に学ぶ良い機会となった！
例えば、下記のような疑問がFoundation Levelで学習により解決した

 - バグ？ (故障(Failure)、欠陥(Defect, Fault)、誤り(Error))の違いは？
 - テストとは、プログラムを実行するだけの活動？テストプロセスとは？
 - レビューとは、ドキュメントを集まって読み合わせるだけの活動？
 - 品質保証(QA)とテスト活動の位置づけは？
 - シフトレフト、Wモデルとは？
 - テスト技法にはどんなものがあるのか？どう使うのか？
 - テストのマネジメントどう行う？
 - テストに関するツールにはどんなものがある？

### テストの基本的な用語・考えが分からないことによるミスコミュニケーションが減った！

テストの基本的な用語や考え方が分からないことで、↓のときに、内容が入りにくいことが多々あったが、Foundation Levelを一通り学習したことで、↓のときに内容が入りやすくなったことを実感しました。

- 別のソフトウェアテストの本を読むとき
- 社外勉強会でソフトウェアテストの講演を聴講するとき

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/516424/b9f408c1-d2a7-64bb-a223-05ed63227002.png)

### まずは、シラバスに目を通してみては？ (シラバス読むのは無料！)

ソフトウェア設計者、テスト担当者はレベルや経験問わず、一度シラバスの目次を読んでみて、少しでも分からない用語が出てくるようであれば、詳しく読んでみるのも良いかもしれません。経験則でやっていたテストからレベルアップするきっかけになるかもしれません。

- [FLシラバス(2018年度版)](http://jstqb.jp/syllabus.html)

# 今後の目標は？

## 初級ソフトウェア品質技術者資格試験

>
ソフトウェア品質向上のための資格制度

JSTQB Foundation Level試験では、"テスト"の考え方・技術について学習をしました。本試験では、"品質"や"品質保証"の考え方や技術について学習する機会となりそうなので、資格取得を目標に学習を開始しました！

|第24回|初級ソフトウェア品質技術者資格試験|
|:-----------------:|:------------------:|
| 開催日| 2020年6月13日（土）10:30～11:30（60分）|
| 開催地域 | 東京、名古屋、大阪、福岡 他（予定） |
| 試験料 | 11,000円（税込）※税抜価格：10,000円，消費税10% 1,000円|
|申込期間 | 2020年3月2日（月）～5月8日（金）15:00（予定）|
[ソフトウェア品質技術者資格試験 JCSQE](https://www.juse.jp/jcsqe/schedule/)
※2020年2月26日時点の情報です。


## JSTQB Advanced Level <テストマネージャ>

JSTQB Foundation Level試験の結果待ちですが、合格したらさらにその上位資格であるAdvanced Levelに挑戦していきたいと思います！

|第10回|AL ＜テストマネージャ＞試験実施スケジュール|
|:-----------------:|:------------------:|
| 試験種別 | AL ＜テストマネージャ＞ |
| 日時     | 2020年8月22日（土）10:00～13:00 実施 |
| 申込受付 | 2020年5月8日（金）15:00～6月9日（火）15:00（予定）|
[JSTQB認定テスト技術者資格 Advanced Level試験 実施要項](http://jstqb.jp/attribute.html)
※2020年2月26日時点の情報です。

## JSTQB Advanced Level <テストアナリスト>
Comming soon...

# まとめ

- 「ソフトウェアテストについて体系的に学ぶ必要がある」、「ソフトウェアテストの成長に限界を感じている」と考えている方
    - ぜひ、JSTQB Foundation Levelを学習・受験を検討してみてください。
- 学習方法
    - 学習時間 2カ月強(9週間) 
        - 大雑把に学習期間(2週間)
        - しっかり学習期間 (6週間)
        - 最後の追い込み期間（1週間）
- 学習教材
    - [FLシラバス(2018年度版)](http://jstqb.jp/syllabus.html)
        - あまり使わなかった。
    - [ソフトウェアテスト教科書 JSTQB Foundation 第4版 シラバス2018対応](https://www.amazon.co.jp/gp/product/4798160660/ref=ppx_yo_dt_b_asin_title_o00_s00?ie=UTF8&psc=1)
        - メイン(教科書＋演習問題として)で使用
    - [[改訂版] 演習で学ぶソフトウェアテスト特訓150問 ~JSTQB認定テスト技術者資格FoundationLevel対応](https://www.amazon.co.jp/gp/product/4774164690/ref=ppx_yo_dt_b_asin_title_o08_s00?ie=UTF8&psc=1)
        - 最後の追い込みで使用 (用語は旧シラバスベース)
    - JSTQB試験(FL) 完全攻略 テスト技術者の友【テス友】
    - 通勤・隙間時間のお供に！
        - [Andoroid版](https://play.google.com/store/apps/details?id=jp.co.vmt.jstqbflapp)
        - [iOS版](https://apps.apple.com/jp/app/jstqb%E8%A9%A6%E9%A8%93-fl-%E5%AE%8C%E5%85%A8%E6%94%BB%E7%95%A5-%E3%83%86%E3%82%B9%E3%83%88%E6%8A%80%E8%A1%93%E8%80%85%E3%81%AE%E5%8F%8B/id867403516)
- 学習・受験をオススメしたい理由 (私が学習・受験して良かったこと)
    - ソフトウェアテスト技術の基礎を体系的に学ぶ良い機会となった！
    - テストの基本的な用語・考えが分からないことによるミスコミュニケーションが減った！
- 今後の目標
    - 「初級ソフトウェア品質技術者資格試験」受験予定
    - 「JSTQB Advanced Level <テストマネージャ>」受験予定

最後まで、読んでくださりありがとうございました！(^^)/