ソフトウェアの品質保証の役割を担う、QAエンジニアの仕事内容は多岐に渡ります。ソースコードの確認やテストケースの作成・実行まで、品質の改善に関わる業務を幅広く担当します。
QAエンジニアには、品質改善のノウハウを蓄積して実行に移すためのある程度のスキルや経験が求められるのです。そこで今回は次のような方向けに、QAエンジニアにおすすめの本をいくつかご紹介します。
- QAエンジニアについて興味がある
- QAエンジニアの活動内容を体系的に学びたい
- 学習向きのおすすめ書籍を知りたい
QAエンジニアにおすすめの本
QAエンジニアは「品質」の分野に特化したエンジニアです。そのため、品質改善・向上のためにも重要となる「ソフトウェアテスト」について特に詳しく理解しておく必要があります。
「ソフトウェアテストとは何か」「テスト時に用いられる技法」「QAエンジニアが取得するべき資格」といった基本的な内容から実業務向けの内容まで、幅広く書籍が出版されています。
まずは読みたい本8選
QAエンジニアにおすすめの本は数多くありますが、まずは読みたい本を次の8冊紹介していきます。
本の題名 | 特徴 |
知識ゼロから学ぶソフトウェアテスト | 初心者向けの内容 |
初めての自動テスト | 自動テストをしたことがない人向け |
はじめて学ぶソフトウェアのテスト技法 | 基礎的なソフトウェアのテスト技法が充実 |
ソフトウェア品質保証入門 | ソフトウェア品質保証において基礎的な内容が充実 |
ソフトウェアテストの教科書 | 基礎的な要素が多く含まれている |
マインドマップから始めるソフトウェアテスト | それぞれのフェーズごとにマインドマップを活用して詳しく説明 |
ソフトウェア品質を高める開発者テスト | バグがでない仕組みや上流品質を上げることでより良い製品を楽に作る方法が充実 |
マンガでわかるソフトウェアテスト入門テスターちゃんVol.1 | マンガで技法ややり方、用語などを説明 |
1.知識ゼロから学ぶソフトウェアテスト
実業務でテスト作業に関わるエンジニア向けに、ソフトウェアテストについての基礎知識をまとめている本です。
テストの主目的であるバグとは何かという、基礎的な部分から説明されています。他にも、ホワイトボックステストやブラックボックステストについての解説、ウォーターフォール開発やアジャイル開発などのテスト技法について、図やイラストを交えながら丁寧に解説されています。
テストケースの作成・実行方法や非機能テストについてなど、実業務向けな内容も盛り込まれています。
参考:Amazon.co.jp: 知識ゼロから学ぶソフトウェアテスト 【改訂版】 : 高橋 寿一
2.初めての自動テスト
テストの自動化について、考え方やWEBサービスの自動テスト方法など、体系的な知識を解説しています。テストの自動化は、開発の効率化を図るためにも重要ですが、導入や運用に不備があれば、かえってコストが掛かってしまうものとなります。
この本には、テストコードも多く掲載されているため、テスト自動化のノウハウを幅広く学べます。これからテスト自動化の導入を考えている方、興味がある方向けの本となっています。
参考:Webシステムのための自動テスト基礎 | Jonathan Rasmusson, 玉川 紘子 |本 | 通販 | Amazon
3.はじめて学ぶソフトウェアのテスト技法
テストで直面する課題を挙げており、それに対する効率的な解決方法を解説してくれています。ソフトウェアテストの定義とは何かという基礎的な部分から、いかにテストを少ないリソースで実行するかといった実業務的な内容まで、幅広く網羅されています。
さまざまな技法が紹介されているため、テスト技法について幅広く知りたい方にはおすすめの一冊です。
参考:はじめて学ぶソフトウェアのテスト技法 | リー コープランド, 宗 雅彦 | コンピュータ・IT | Kindleストア | Amazon
4.ソフトウェア品質保証入門
QAエンジニアに求められるのは、品質保証です。テストについての本は多くあっても、品質そのものについて詳しく解説してくれている本は多くありません。
この本は、品質保証に役立つツールや手法など、組織としての品質保証のあり方を解説してくれています。
参考:ソフトウェア品質保証入門―高品質を実現する考え方とマネジメントの要点 | 勝通, 保田, 隆正, 奈良 |本 | 通販 | Amazon
5.ソフトウェアテストの教科書
QAエンジニアになるには、「ソフトウェアテストの教科書」がおすすめです。初心者向けの本であり、ソフトウエアの品質を守る方法をはじめ計画をするときのミスを減らしたい方法など基礎的な要素が多く含まれています。学生でソフトウエアについて勉強をしたい人や、仕事で急にソフトウエアテストが必要になった方などにおすすめです。
参考:【この1冊でよくわかる】 ソフトウェアテストの教科書 [増補改訂 第2版] | 布施 昌弘, 江添 智之, 永井 努, 三堀 雅也, 石原 一宏, 堀 明広 |本 | 通販 | Amazon
6.マインドマップから始めるソフトウェアテスト
QAエンジニアになるには、「マインドマップから始めるソフトウェアテスト」がおすすめです。マインドマップからというと難しいイメージがありますが、初心者向けの内容が豊富に揃っています。ソフトウェアテストにおいて、それぞれのフェーズごとにマインドマップを活用しノウハウや考え方を説明しているのが特徴です。さらに、実例がでているので理解しやすくなっています。
参考:[改訂新版]マインドマップから始めるソフトウェアテスト | 池田 暁, 鈴木 三紀夫 |本 | 通販 | Amazon
7.ソフトウェア品質を高める開発者テスト
QAエンジニアになるには、「ソフトウェア品質を高める開発者テスト」がおすすめです。ソフトウエアの専門家が説明をしており、内容はバグがでない仕組みや上流品質を上げることでより良い製品を楽に作るといった内容です。テストの自動化やアジャイル開発においての品質担保など、それぞれの概念や手法において実例を加えてわかりやすく説明しています。
参考:ソフトウェア品質を高める開発者テスト 改訂版 アジャイル時代の実践的・効率的でスムーズなテストのやり方 | 高橋寿一 |本 | 通販 | Amazon
8.マンガでわかるソフトウェアテスト入門テスターちゃんVol.1
QAエンジニアになるには、「マンガでわかるソフトウェアテスト入門テスターちゃんVol.1」がおすすめです。特に文章だけでソフトウエアテストについて理解が難しいといった方に、マンガで技法ややり方、用語などを説明しています。この本を読むことで、ソフトウエアについてイメージがつきやすくなり今後より詳しく勉強を進める際に役立ちます。
参考:マンガでわかるソフトウェアテスト入門 テスターちゃん Vol.1 | 松谷 峰生 |本 | 通販 | Amazon
資格試験におすすめの本4選
資格試験を勉強するためには、合格するために必要な内容が含まれていることが重要です。そこで、おすすめの本を次の4冊紹介します。
本の題名 | 特徴 |
ソフトウェアテスト教科書 JSTQB Foundation | ソフトウェアテスト教科書であるJSTQB Foundationが運営 |
初級ソフトウェア品質技術者資格試験(JCSQE)問題と解説第2版 | 初級ソフトウェア品質技術者資格試験を理解するための問題と解説が豊富 |
過去問題で学ぶQC検定3級 2022年版 | QC検定3級にてこれまで出題された傾向と解説が充実 |
演習で学ぶソフトウェアテスト 特訓200問 | テスト技術者資格 Foundation Levelが主な対象 |
1.ソフトウェアテスト教科書 JSTQB Foundation
ソフトウェアテストに関する資格の1つに「JSTQB(Japan Software Testing Qualifications Board)」というソフトウェア技術者資格の運営組織が主催する「JSTQB認定テスト技術者資格」があります。
JSTQBは、基礎に該当する「Foundation Level」とより実践的である上位の「Advanced Level」の二つのレベルに分けられます。この本は、JSTQB認定テスト技術者資格の、Foundation Levelについて学習できるJSTQB公認のテキストです。
公認のテキストであるため、資格試験に出題される内容が網羅されており、ソフトウェアテストの基礎知識を習得するにはおすすめの本となっています。
2.初級ソフトウェア品質技術者資格試験(JCSQE)問題と解説第2版
JCSQE(JUSE Certified Software Quality Engineer)とは、日本科学技術連盟(日科技連:JUSE)が主催する資格です。前述のJSTQBと混同されがちですが、JSTQBがソフトウェアテストに特化している資格であるのに対して、JSCQEは品質に特化しています。
ソフトウェア品質の基礎知識や、テスト技法からレビュー技法まで、幅広く知識を習得するための学習としておすすめの資格です。初級・中級に分けられており、この本では初級レベルの問題と解説を取り扱っています。
参考:初級ソフトウェア品質技術者資格試験(JCSQE)問題と解説 第2版 単行本 – 2015/12/17
3.過去問題で学ぶQC検定3級 2022年版
QC検定(品質管理検定)とは、品質管理に関する知識や実践方法を問う資格です。1級~4級までのレベルがあり、品質管理の経験がない初心者から、品質管理の責任者クラスまで幅広い層を対象に実施されています。
この本では、品質管理業務で最低限問われる知識が扱われる、QC検定の3級について過去問題を交えて学習できます。
参考:過去問題で学ぶQC検定3級 2022年版 単行本 – 2021/12/27
4.演習で学ぶソフトウェアテスト 特訓200問
ソフトウエア関連の試験資格のための本をお探しであれば、「演習で学ぶソフトウェアテスト 特訓200問」がおすすめです。JSTQB(Japan Software Testing Qualifications Board)が運営しているテスト技術者資格 Foundation Levelが主な対象ですが、さらに高いレベルの内容も多く含まれています。
試験資格に合格するだけが目的ではなく、現場において必要な知的技能や用語を勉強することができます。
参考:[改訂3版]演習で学ぶソフトウェアテスト 特訓200問 ――JSTQB認定テスト技術者資格 Foundation Level対応 | 正木 威寛 |本 | 通販 | Amazon
まだまだあるQAエンジニアにおすすめの本
ここまで説明した以外にもおすすめのQAエンジニアに関するおすすめの本があります。ここでは次の18冊を紹介します。
本の題名 | 特徴 |
エンジニアリング組織論への招待 | コミュニケーションに重点を置いた内容 |
企画立案からシステム開発まで本当に使えるDXプロジェクトの教科書 | DXプロジェクトを成功に導く |
ソフトウェアテストをカイゼンする50のアイデア | 関係者と品質に関する全体像を定義 |
ソフトウェアテスト12の必勝プロセス | 初心者にもおすすめ |
ソフトウェアテスト293の鉄則 | 必要な法則が293種類紹介されている |
ソフトウェアテスト技法ドリル | JSTQBに取り上げられている技法を多く取り上げている |
ソフトウェアテスト技法練習帳 | 40問と充実しており、幅広い分野から出題されている |
ソフトウェア技術者のためのバグ検出ドリル | テスト技能を使ってバグを探す練習ができる |
システムテスト自動化ガイド | コンポーネントテストや統合テストに対応 |
ソフトウェア品質知識体系ガイド | ソフトウェア品質を保持するための知識が充実 |
単体テストの考え方/使い方 | 単体テストの原則・実践や関連したプロジェクトを持続させるために必要な戦略を詳しく解説 |
駄目パターンに学ぶ 失敗しないソフトウエアテスト実践ノウハウ | 基礎的な内容から失敗例から学ぶ方法を紹介 |
ソフトウェアテスト自動化の教科書 | 自動テストにおいて基礎的な知識や実践方法などを説明 |
SO/IEC/IEEE29119ソフトウェアテスト規格の教科書 | ソフトウェア国際規格を詳しく解説 |
AIソフトウェアのテスト | AIシステムをテストする際に必要な知識が充実 |
ソフトウェアテストの教科書品質を決定づけるテスト工程の基本と実践 | 開発をするうえでバグを減らすために効率的なテストの手法を解説 |
Selenium実践入門 自動化による継続的なブラウザテスト | テスト自動化のノウハウが詰まっている |
テスト駆動Python | pythonで構築するときに必要な知識が詰まっている |
1.エンジニアリング組織論への招待
組織の一員として業務に当たる場合、コミュニケーションの不確実性や、メンバー間の認識のずれに直面することは多いです。
この本は、プロジェクトを円滑に進めて生産性を上げるにはどうすればよいか、実践的な内容というよりも、概念や考え方を取り扱っています。プロジェクトとはどうあるべきか、仕組みの作り方について興味がある方へおすすめの一冊です。
参考:エンジニアリング組織論への招待 ~不確実性に向き合う思考と組織のリファクタリング | 広木 大地 |本 | 通販 | Amazon
2.企画立案からシステム開発まで本当に使えるDXプロジェクトの教科書
デジタル技術の浸透により、人々の生活をより良いものへ変えていく「DX(Digital Transformation)」という考え方が注目されつつあります。
この本では、そんなDXを取り扱ったプロジェクトであるDXプロジェクトについて、円滑に進めるためのノウハウがまとめられています。DXにおけるシステム開発の流れを具体例を挙げて解説してくれており、DXプロジェクトに取り組む方向けにおすすめの一冊です。
参考:企画立案からシステム開発まで 本当に使えるDXプロジェクトの教科書 | 下田 幸祐, 飯田 哲也 |本 | 通販 | Amazon
3.ソフトウェアテストをカイゼンする50のアイデア
「ソフトウェアテストをカイゼンする50のアイデア」は関係者と品質に関する全体像を定義しており、テスト自動化や有効期間など現場において必要な部分を具体的に言語化している点が特徴です。さまざまな議題を提案をしており、それぞれの擬態に対して意見を出し合うようなイベントも開催されています。
参考:ソフトウェアテストをカイゼンする50のアイデア 単行本(ソフトカバー) – 2022/9/20
4.ソフトウェアテスト12の必勝プロセス
「ソフトウェアテスト12の必勝プロセス」はわかりやすい内容となっており、ソフトウェアテストやQAを勉強したばっかりで教科書や問題集を解いたあとくらいに読むのにぴったりです。特に、知識なしで勉強するソフトウェアテスト、マインドマップから学ぶソフトウェアテスト等の項目がおすすめです。
参考:ソフトウェアテスト12の必勝プロセス-テストの計画・準備・実行・改善を究めるために | Rex Black, テスト技術者交流会, トップスタジオ |本 | 通販 | Amazon
5.ソフトウェアテスト293の鉄則
「ソフトウェアテスト293の鉄則」は、手動テストや自動テストの扱い方、自動化するときの注意点などソフトウエアテスト全般的な内容が含まれています。必要な法則が293個あり、スムーズに頭に入ってきます。Kindle版で販売されているため購入しやすい点もメリットです。
参考:ソフトウェアテスト293の鉄則 | Cem Kaner, James Bach, Bret Pettichord, テスト技術者交流会 |本 | 通販 | Amazon
6.ソフトウェアテスト技法ドリル
「ソフトウェアテスト技法ドリル」は、テスト技法を勉強している人が最初に読むことをおすすめしたい本です。JSTQBに取り上げられている技法が多く含まれていることも特徴的です。テスト技能が身につくことによって、自動的にテストは効率化されます。さらに、テストの自動化をするためにも必要な知識が身に付きます。
参考:ソフトウェアテスト技法ドリル【第2版】: テスト設計の考え方と実際 | 秋山 浩一 |本 | 通販 | Amazon
7.ソフトウェアテスト技法練習帳
「ソフトウェアテスト技法練習帳」はある程度知識を身に着けた時に試していただきたい問題集です。40問掲載しており、幅広く技法に関して勉強できます。技能を身に着けたい人はこの問題集を使って全て解けるようになるまで繰り返し勉強をするとよいでしょう。
参考:ソフトウェアテスト技法練習帳 ~知識を経験に変える40問~ 単行本(ソフトカバー) – 2020/1/7
8.ソフトウェア技術者のためのバグ検出ドリル
「ソフトウェア技術者のためのバグ検出ドリル」はここまでで習得したテスト技能を活用することによって、コードと仕様が提供されている状態からバグを検出する練習ができます。実際に開発する上でバグの検出は重要であり身に着けておくべき技術です。
参考:ソフトウェア技術者のためのバグ検出ドリル | 恒央, 山浦, 祐仁, 大森 |本 | 通販 | Amazon
9.システムテスト自動化ガイド
「システムテスト自動化ガイド」は、コンポーネントテストから統合テストまで幅広い内容が含まれています。大規模にツールを導入したりOSSを導入したりする場合の費用を明確にするなど、基礎的なことを明確にすることが可能です。システムテストを自動化する上でぜひ読んでおきたい本の1つです。
参考:システムテスト自動化 標準ガイド (CodeZine BOOKS) 単行本(ソフトカバー) – 2014/12/16
10.ソフトウェア品質知識体系ガイド
「ソフトウェア品質知識体系ガイド」は、ソフトウェア品質を保持するために必要な知識が詳しく説明されています。体系的にかかれており技術カタログとして使うため、全て読むのは容易ではありません。そのため、全体的に斜め読みしたあとに品質保証を進めているプロセスにおいてわからない単語や技術などがでてきた時に活用するようにしましょう。
参考:Amazon.co.jp: ソフトウェア品質知識体系ガイド(第3版): SQuBOK Guide V3
11.単体テストの考え方/使い方
「単体テストの考え方/使い方」は、単体テストの原則・実践を詳しく説明しているほか、関連したパターンやプロジェクトを進めるための戦略について必要なことが書かれています。テストの質を高めることで、プロジェクトを向上させることやソフトウエアテストの品質改善につなげることが可能です。
参考:単体テストの考え方/使い方 単行本(ソフトカバー) – 2022/12/28
12.駄目パターンに学ぶ 失敗しないソフトウエアテスト実践ノウハウ
「駄目パターンに学ぶ 失敗しないソフトウエアテスト実践ノウハウ」とは、テストの生産性が上がらない、品質を高められない事例を説明しながらこれらに対策できる方法を説明しています。また、必要なノウハウや知識についても紹介しているため、初心者にも向いています。おさえるべきテストの基本や実行、管理などが含まれているのが特徴です。
参考:駄目パターンに学ぶ 失敗しないソフトウエアテスト実践ノウハウ
13.ソフトウェアテスト自動化の教科書
「ソフトウェアテスト自動化の教科書」は、ソフトウェアテストにおいて自動テストの基本的な知識やプロセス、設計などをメインにリスク対策やコスト削減までを説明した本です。失敗例を説明しどのように対処したのかも書かれています。
参考:ソフトウェアテスト自動化の教科書 〜現場の失敗から学ぶ設計プロセス | 林 尚平 |本 | 通販 | Amazon
14.ISO/IEC/IEEE29119ソフトウェアテスト規格の教科書
「ISO/IEC/IEEE29119ソフトウェアテスト規格の教科書」はソフトウェア国際規格であるISO/IEC/IEEE29119について詳しく説明しています。WG長だった方が書いている本であり、必要な知識において要所が詰まった本です。徹底解説されているため、はじめて規格について知る人にもおすすめできる本です。
参考:【Amazon.co.jp 限定】ISO/IEC/IEEE 29119 ソフトウェアテスト規格の教科書
15.AIソフトウェアのテスト
「AIソフトウェアのテスト」は、AIシステムのテストをする上で知っておくべきことやテスト技術、導入方法などについて詳しく説明しています。そのため、AIソフトウェアのテスト方法が理解できていない開発者や品質保証担当者などにおすすめの本です。
参考:AIソフトウェアのテスト | 佐藤直人, 小川秀人, 來間啓伸, 明神智之 | 工学 | Kindleストア | Amazon
16.ソフトウェアテストの教科書品質を決定づけるテスト工程の基本と実践
「ソフトウェアテストの教科書品質を決定づけるテスト工程の基本と実践」は、開発者がするべきバグを減らすためのテストに必要な知識やノウハウなどが書かれています。アジャイル開発においての品質保持や単体テスト、テストの自動化、ソフトウェアの品質向上につなげるために必要な手法や知識などについても詳しく説明されているのが特徴です。
参考:【この1冊でよくわかる】ソフトウェアテストの教科書―品質を決定づけるテスト工程の基本と実践
17.Selenium実践入門 自動化による継続的なブラウザテスト
「Selenium実践入門 自動化による継続的なブラウザテスト」は、Webブラウザテストを自動化する際の導入方法や取り組み方などを詳しく記しています。
他にもエンジニアがWEbアプリケーションテストを自動化するために必要であるWeb DriverやSelenium、その他便利な各種ライブラリなどについて詳しく説明しています。DeNAやサイボウズに関連する事例を紹介していることから、他社の事例を把握したいエンジニアにもおすすめです。
参考:Selenium実践入門 ―― 自動化による継続的なブラウザテスト (WEB+DB PRESS plus) 単行本(ソフトカバー)
18.テスト駆動Python
テスト駆動Pythonは、Pythonはなんとなく知っているけどテストの仕方がわからないといった方におすすめです。
Phthonを使ったテストであるpytestの基礎的なことから、テスト関数、プラグイン、構成などが詳しく説明されています。筆者は20年間R&D経験を持つ主席ソフトウェアエンジニアであり、現場に必要な要素が豊富に含まれています。
参考:テスト駆動Python 単行本(ソフトカバー) – 2018/8/29
ソフトウェアテストの本についてよくある3つの質問
ソフトウェアテストの本についてよくある次の3つの質問を紹介します。本を探している人は是非参考にしてください。
- ソフトウェアテストについて本以外で学習する方法はありますか?
- ソフトウェアテストについて本で学ぶ際のコツはありますか?
- ソフトウェアテストの本を選ぶ際のポイントはありますか?
質問1.ソフトウェアテストについて本以外で学習する方法はありますか?
ソフトウェアテストについては、本以外でもWebで探せる資料も参考にできるものがあります。
例えばASTER-ASTER 技術セミナーにおいてダウンロードできるASTERセミナー標準テキストは、ソフトウエアテストの初心者を教育するのものであり実際に研修でも活用されているのです。資料内容を確認することで自分がわかっていないことを把握しやすくなります。
質問2.ソフトウェアテストについて本で学ぶ際のコツはありますか?
本を使ってソフトウェアテストについて学ぶとき、次の5つのポイントを意識してみましょう。
- 1冊を何度も繰り返し勉強する
- テストの形で繰り返し復習する
- 記憶の手がかりを作る
- 全体像をつかんでから細かい所をつかむ
- 勉強に必要なモノを揃える
1冊をある程度読み終えたら次の本に進むのではなく、何度も同じ本を勉強してしっかりと理解して身に着けるまで続けましょう。勉強を成功させるのは本を読み返す回数次第といわれます。難しいことであっても何度も読み返すことにより、身に付きやすくなるのです。
本をただ読むのではなく、定期的にテスト形式で内容を理解しているかを確認するようにしましょう。自分でテストを作ったり、過去問を問いたりするなどさまざまな方法があります。難しい単語を覚えるとき、語呂合わせを活用することも1つのコツです。
最後に一でも勉強できるような環境作りをしましょう。例えば蛍光ペンと単語カードを用意するなどスムーズに勉強できるような環境にすることが大切です。
質問3.ソフトウェアテストの本を選ぶ際のポイントはありますか?
ソフトウェアテストを勉強する際に、本を選ぶ際まず人気の高いものを選ぶことが多いのではないでしょうか。しかし、有名な本であっても自分に合うとは限りません。本を選ぶ場合は自分でわかりやすいと感じるものを選ぶことが大切です。
また、要点がわかりやすく書かれている教科書と問題集の両方を使うことがおすすめです。教科書を読んでわかったつもりになっていても、実際には身についていないことが一般的です。そのため、読んだ部分が身についているかどうか、定期的に確認しましょう。この繰り返しでだんだんと身についていきます。
【まとめ】気になる1冊からスタートしてみよう!
ソフトウェアテストを本で勉強する場合、まず気になった本を1冊選び繰り返し読んでみましょう。ある程度把握できたら身についているかどうか自分でテストしてみてください。これを繰り返し続けることでだんだんと身についてきます。
このあと問題集で問題を解いてみることによって理解度を把握し、できていない部分はもう一度勉強し直します。この流れをくりかえすことで本の内容が身に付きやすくなります。