I recently passed the ISTQB Foundation Level exam and even though I did pretty well in the exam I have the feeling that I haven’t learned much at all except maybe some basic concepts and a few strategies on how to pass a multiple choice exam. Therefore, I would like to expand my knowledge on the topics covered in the ISTQB Foundation Level Syllabus. I would be very grateful if anyone can suggest some good books on software testing, and also some “must read” books on the topic.

I just read the syllabus when preparing for the exam, but I also came across a few times on the book “Foundations of Software Testing” by Rex Black, Erik van Veenendaal and Dorothy Graham. I’ve heard some people recommend this book. It covers the 2011 Foundation Level Syllabus. Would it be useful to read it, since I wrote the 2018 Version of the exam? Or is the book “out-of-date” so to speak?

One more thing - is there any way to practice using a software testing tool at home? I would like to have an understanding on how to use some of the well-known tools for testing before I apply for a job. (Studying for the ISTQB exam is plain theory)

I would like to hear your thoughts on it.


6 Answers 6


The must read book for Agile Software Testing is Agile Testing by Lisa Crispin and Janet Gregory. It is generally recognized in the modern Agile Software Quality Assurance field as 'the bible' on what to know and what to do.

enter image description here

As for the 2011 syllabus you 'came across'. It might be relevant but why not study the current syllabus. In a profession where we can make 100k+ (in US) it is 'penny wise, pound foolish' to study old material or perhaps try to save a few hundred dollars in doing so. Life is short. Use your time well.

In order to practice software testing at home I recommend you consider playing with the seleniumIDE

The final points are from someone who's been doing this for a few decades (me):

  • Software certifications aren't very helpful in getting a job
  • Most testing jobs nowadays are requiring automation using a programming language - Ruby, Java, Python, C#, PHP, etc.
  • Testers are now programmers who are expected to have the same skill set.

There are many ways to expend the knowledge as a QA:

  • Test open source software and report defects on Github. Maybe start with the top open source applications, you might already be using some.
  • Try to answers questions here on SQA.SE. If you cannot answer them do research (and create a proof of concept) until you can. This helped me greatly.
  • Read testing blogs
  • Read testing books

My personal opinion is that ISTQB has always been out-of-date and does not provide a practical testing experience that relates to how software is built in the real world. It just exists to earn money from the certification model, not to improve the testing community.


To answer your question about the book it's not outdated from Knowledge Gaining perspective even if it might have become somewhat irrelevant due to new exam syllabus.

Apart from that all the points are covered properly by the already provided answers.

However I would suggest that you can additionally do below things:

  1. On your smartphone try to use some apps in beta version, you are likely to find issues in it.

  2. Try to think how you will test some real object (for example, pen) and then write down it's scenarios and if possible get it checked by some experienced QA for their inputs.

  3. Once you have basic knowledge regarding any tool, practice by setting up and using that tool in your machine.


Learning software testing practically is a whole different thing and studying through books is a whole different thing.

You have to make sure that you are learning the things practically. Before that you should be able to analyze the application.

Take a demo application online and then start your journey in the below manner.

  1. Create the test cases in (P1,P2,P3,P4) formats.
  2. Run the test cases and find defects.
  3. Start writing the defects in the prescribed format.
  4. When you got well versed with the application, sort the test cases that are covering the Sanity test of the application.

By following the above approach you will came know the style of test case creation, defect writing and also the way to prioritize the application test-cases, hence your chances would got bright for a job in a qa company.


Software testing is not a knowledge but an aspiration to get a high quality delivery.

It won't come with a theory study but it comes with a lot of motivation to break things and learn until you know that nothing can be broken from the software.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.