Negative testing is referred as error path testing or failure testing. The reliability of the software is tested based on the negative scenarios. Some of the negative scenarios are:
- Populating required field: Skipping the required data entry and trying to proceed
- Allowed number of characters: Entering more number of characters
- Allowed data bounds and limits: Enter the large values to test the size of the field
- Reasonable Data: Verify the data validity and format
MOBILE NO: ABCDEF – Only Numbers
The features of Negative testing are:
- Negative testing is carried out to find the faults that can be a reason of significant failures.
- This type of testing is performed to overcome the potential exploitation and software weakness
- It shows the corruption or security breaches of the application.
The negative testing is important from organisation’s perspective because it is the organisation’s responsibility to provide good quality of product to the client. The impact of not performing the negative testing can be even a security threat to system. For example: Due to the security related error in the system someone may hack all the sql data and erase it. This will be a great security breach. Hence it is important to do the security testing, while doing negative test cases. Also we need to give priority to the input data. For example in the image field where only GIF pictures can have options we have lot of options to upload ‘Jpeg’, XML files. The software testers need to prioritise the test cases before the execution of the software and save execution time and cost.
The testing techniques are used for positive and negative testing are:
Boundary value Analysis:
This is one of the software testing technique where in the test cases are designed to include boundaries of values. The input data has its limit in the boundary then it is positive testing. The input data is out of the boundary limit or exceeds the boundary value then it is negative testing. Suppose the system accepts the numeric values 0 to 9 the numbers with the boundary values like -1,0,1 and 8, 9, 10 are tested. -1 and 10 are invalid values(negative testing).
This type of testing divides the input data into many partitions with similar input in each partition. From every partition, one value is tested. The one with valid values are positive testing and the value partition of invalid values is negative testing. For example The numeric values from 0 to 9 have three partitions: less than 0, 0 to 9 and greater than 9.
Check your understanding:
1. What are the feature of negative testing and positive testing?
2. What are the techniques of negative testing over positive testing?