Review: Perfect Software and other illusions about testing

Problems this book aims to solve

Testing is one of these disciplines where not only the technology is complicated. It is also not easy to work out the communication and how to keep everyone happy. It is important to learn and to convey what testing is, what the limits of testing are and how to work together successfully.

People are aware that programming is a complex topic, but for the same people, it can be hard to see, that this is also true for testing. It is easy to come to the idea, that it is possible just to grab random people off the street to let them test in an unstructured manner.

The goal of this book is to provide the necessary information, to enable you to defend yourself again these ideas and to create realistic demands and beliefs about the testing process and the book does this.

Target Audience

“Perfect Software and other illusions about testing„ is a book for many people.
I am a junior tester and was looking for the experience of a mentor to benefit from, and I got this without a doubt. It is a great addition to “Lesson Learned in Software Testing: A Context-Driven Approach“ written by James Bach, Cem Kaner und Bret Pettichord, which I will review later this year.

As a senior tester, you will find at least new ways to communicate issues, and I think this book this book will provide value to you too.

This book was written with the idea in mind, that it would not only be read by an actual tester, but also by developers, project managers and everyone who has in interested in producing proper software and has a need to know about the boundaries and problems testing has. This goal is not a secondary function of the book, and the author wrote it intentionally to be readable for these people too:

“My intended audience is broad: I envision this book in the hands of professional testers, developers, consumers, analysts, designers, programmers, all of their managers, and all of their coworkers” – Preface xiv

If you want to know how to test software, this book will not help you that much. It is about how to handle bad communication and misguided expectations mainly.

Content and Scope

The book has eighteen chapters on 216 pages, you cannot print information much more compact. I wished for more content, not because there is not enough content, but because the information you get in this book is edited well, I do not know a book that does it better and therefore very useful.

Every chapter has the same structure. It is evident that the author had the goals to help and guide the reader in learning and understanding the content. After a short introduction the author is answering several questions in up to two pages, most of the time less. He can do that because he is forgoing repeated content and fluff in general. It is visible that he values the reader and his time. In a recap, you will get the gist of the whole chapter and a list of common mistakes people make regarding the topic of the section.

In combination with the index, it is straightforward to find content again and to work with the book. It is an excellent idea have the book somewhere ready to read because in a five-minute session you can reread one question and its answer if. Using the book like this is also a valid reading strategy in general, it is not necessary to read it like a story from start to end. Short sessions over time do work.

Like it is to be expected for such a book, it will contain information you already knew but never verbalized. People tend to question such content because it seems like they did not learn something new. This is not true, a text that helps you to formulate thoughts is valuable. The author is helping you to transform your tacit knowledge, into explicit, actionable knowledge you can transfer to others. It is the sign of a great mentor, to be able to do this. He enables you to make knowledge actionable.

For social problems, like the ones between testers and developers, the author is using little stories. These work like examples the author is working with, to create solutions.

The author and his editor wrote professionally. The style is natural and everything is easy to understand.


Gerald Weinberg delivers what he promised. Beginners and Professionals will get value out of “Perfect Software and other illusions about testing.” It will help you to understand the limitations and problems you will face while testing software with people. You will learn information that enables you to defend your positions. Senior testers will be happy to find new opinions on non-technical topics.

I do not think anybody will feel like reading this book was a waste of time. When you have learned to love this book, you might not want to give it away, but it is a good title to share with other people. (May be the ones who do not know they need it.)

Title Perfect Software and other illusions about testing
Author Gerald M. Weinberg
Publisher Dorset House Publishing
Pages 2016
Sprache Englisch
Year 2008
ISBN 978-0-932633-69-9
Target Audience Testers, Developers, Project Managers
  1. Why Do We Bother Testing?
  2. What Testing Cannot Do
  3. Why Not Just Test Everything?
  4. What’s the difference between testing and debugging?
  5. Meta-Testing
  6. Information Immunity
  7. How to deal with defensive reactions
  8. What makes a good test
  9. Major fallacies about testing
  10. Testing is more than banging keys
  11. Information intake
  12. Making meaning
  13. Determining significance
  14. Making a Response
  15. Preventing software testing from growing more difficult
  16. Testing without machinery
  17. Testing scams
  18. Oblivion scams

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s