Tutorial part 1: Introduction
What is Software Testing?
Software testing is being recognized as a profession now. Even though the word “Software Testing” is too common, the question “What is software testing” is being asked worldwide today.
It is because of the crucial role software testing plays in the day to day life. It is also said to be an art to improve the quality of the software made. Software testing is the operating of software under controlled conditions to check whether the software works well and to rectify the errors, and also to make sure that we are delivering the correct software what the user intends.
The definition of testing according to the ANSI/IEEE 1059 standard is that “testing is the process of analyzing a software item to detect the differences between existing and required conditions (that is defects/errors/bugs) and to evaluate the features of the software item”.
Testing the software is the process of validating and verifying of a software program. The errors are to be identified in order to fix those errors. Thus the main objective of software testing is to maintain and deliver a quality product to the client. Every software is expected to meet certain needs. So when a software is developed it is required to check whether it fulfills those needs. A banking software is entirely different from a software required in a shop. The needs and requirements of both those software are different. Hence it is important to check its potential. The main goal of software testing is to know the errors of the software before the user finds them. A good tester is one who makes the software fail. He should always be in a mentality to destruct the software. A software tester should not be the one who makes the software.
What is the objective of software testing?
Software testing has many objectives. When you ask this question to yourself, i know, you will have some points in your mind, isn’t it? Eh….anyways, i know it is a pleasure to read the same point in your mind in a post. so we shall discuss them here now.
- Software testing helps to make sure that it meets all the requirement it was supposed to meet.
- It will bring out all the errors, if any, while using the software.
- Software testing helps to understand that the software that is being tested is a complete success
- Software testing helps to give a quality certification that the software can be used by the client immediately.
- It ensures quality of the product.
Now, don’t you feel that your view was right? Good… So let us go ahead. Besides, all these please keep in my mind that it is impossible to identify all errors, simply because it is not possible. As you know no human is error free. The same with softwares too. Testing can done in two ways:
- Positive software testing
- Negative software testing
Positive software testing is the testing by giving the expected data to know whether it works well with expected data, where as negative software testing is testing by giving what is unexpected to know how the software reacts to such a data. Negative software testing is also known as illegal testing since the testing is using a abnormal data. Positive software testing is the usual testing done to check the functionality of the software. Both these testing helps us in finding errors. Negative software testing is always giving us a positive view about software testing itself. It helps us to know the software behaves as it is required to behave. The aim of a software tester should be to make the software fail. He should never think like a software maker.
You will get more details about different type of testing and methods in our other tutorials.