Within the last 18 months more than 40,000 people worldwide have taken the International Software Testing Qualifications Board (ISTQB) Foundations Level exam, 10,000 alone in the last 4 months. So, where can all these people go to learn what they need to know in order to pass the exam? Now they can go to Software Testing Foundations 2nd Edition, from Rocky Nook's new Computing division.
Professional testing of software has become an increasingly important task requiring a profound knowledge of testing techniques. The ISTQB has developed a universally accepted, international, qualification scheme aimed at software and system testing professionals, and has created the syllabi and tests for the "Certified Tester".
With authors who are among the founders of the ISTQB, this improved, updated, newly edited 2nd Edition covers the "Foundations Level" (i.e., entry level), and teaches the most important methods of software testing. It is designed for self-study and provides the necessary knowledge to pass the Certified Tester - Foundations Level exam as defined by the ISTQB. It also covers more recent topics, such as test-first approach and risk-based testing.
Review By: Tim Dugan 07/08/2010Software Testing Foundations: A Study Guide for the Certified Tester Exam (2nd edition) covers the range of traditional testing functions with a clear explanation of their purpose and progression. Since the purpose of the book is to help testing engineers prepare for the International Software Testing Qualifications Board Foundation Level Syllabus (ISTQB) certification course, the book's content is driven by this curriculum. The book covers the basics of software testing, testing throughout the software lifecycle, static testing, dynamic analysis, test management, and test tools.
The layout of the text is very nice, with notes in the margins and "call-outs" within the text that identify critical terms and concepts. Despite the fact that this book is a translation from German, the writing style is clear and easy to follow.
My favorite chapter in the book is chapter 5 on Dynamic Analysis--Test Design Techniques. This is the type of information that I see missing in many other texts that I feel testers, at least the ones I work with, would benefit from reading the most. Examples of analysis are provided that includes decision tables, branch and path coverage, test conditions, control flow, transitions, boundary values, and more. The quality of your product (and, hence, your profit) may depend on the ability to use these types of tools to produce thorough test cases.
In summary, this book does an effective job at meeting its objective of providing a guide to "... structured and systematic evaluation and testing."
In my opinion, Software Testing Foundations 2nd edition is a good survey of software testing techniques, especially for those with limited or no knowledge of the subject. It is concise but clear and covers a full range of the subject.
The specifics of the section on test tools are somewhat light and, in particular, briefly mention test coverage tools. The biggest drawbacks are that the concepts are too traditional. The software development community is dynamic, and, as a result, not all of the practices from the past hold up to the fast-paced software delivery cycles of today. (Although I cannot fault the authors for this; their objective was to follow the ISTQB’s recommendations of what to cover for the certification course.) The text totally omits modern concepts such as agile and continuous integration and only mentions the concept of iterative development, but it never addressed effective iterative testing.
I believe testing engineers require new skills of tracking and organization to keep up with agile and similar methodologies. Overall, I would recommend the book to less-seasoned testing engineers, but with the caveat that its concepts are a little dated.