Foundation of Software Testing

Foundation of Software Testing

Foundation of Software Testing


we’re going to kick off the book with a discussion on why testing matters. We’ll describe and illustrate how software defects or bugs can cause problems for people, the environment or a company. We’ll draw important distinctions between defects, their root causes and their effects. We’ll explain why testing is necessary to find these defects, how testing promotes quality, and how testing fits into quality assurance. In this section, we will also introduce some fundamental principles of testing.
As we go through this section, watch for the Syllabus terms bug, defect, error,failure, fault, mistake, quality, risk, software, testing and exhaustive testing.You’ll find these terms defined in the glossary.

You may be asking ‘what is testing?’ and we’ll look more closely at the definition of testing in Section 1.2. For the moment, let’s adopt a simple everydaylife usage: ‘when we are testing something we are checking whether it is OK’. We’ll need to refine that when we define software testing later on. Let’s start by considering why testing is needed. Testing is necessary because we all make mistakes.

Foundation of Software Testing

Some of those mistakes are unimportant, but some of them are expensive or dangerous. We need to check everything and anything we produce because things can always go wrong – humans make mistakes all the time – it is what we
do best! Because we should assume our work contains mistakes, we all need to check our own work. However, some mistakes come from bad assumptions and blind spots, so we might make the same mistakes when we check our own work as we made when we did it. So we may not notice the flaws in what we have done. Ideally, we should get someone else to check our work – another person is more likely to spot the flaws.

In this book, Foundation of Software Testing we’ll explore the implications of these two simple paragraphs again and again. Does it matter if there are mistakes in what we do? Does it matter if we don’t find some of those flaws? We know that in ordinary life, some of our mistakes do not matter, and some are very important. It is the same with software systems. We need to know whether a particular error is likely to cause problems. To help us think about this, we need to consider the context within which we use different software systems.

Click Here to Download the complete book in Pdf format.

Please Drop your mail id below in the comments. If you are unable to Download this book. We will mail you this book.


  1. raghu says:

    unable to download..thanks for providing the alternate solution for getting the book

  2. Sukhmani says:

    Hey Raghu thanks for comment…did you click on the download link?? Please click on that link you will get the book on google drive. Please drop your mail id I will personally mail you.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.