If under certain environment and situation defects in the application or product get executed then the system will produce the wrong results causing a failure.Not all defects result in failures, some may stay inactive in the code and we may never notice them. Example: Defects in dead code will never result in failures.
It is not just defects that give rise to failure. Failures can also be caused because of the other reasons also like:
- Environmental conditions, which might cause hardware failures or change in any of the environmental variables.
- Human Error while interacting with the software by keying in wrong inputs.
- Failures may occur if the user tries to perform some operation with intention of breaking the system.
Difference between Error, Defect and Failure in software testing:
Error: The mistakes made by programmer is known as an ‘Error’. This could happen because of the following reasons:
- Because of some confusion in understanding the functionality of the software.
- Because of some miscalculation of the values.
- Because of misinterpretation of any value, etc.
Defect: The bugs introduced by programmer inside the code are known as a defect. This can happen because of some programmatically mistakes.
Failure: If under certain circumstances these defects get executed by the tester during the testing then it results into the failure which is known as software failure.
Few points that are important to know:
When tester is executing a test he/she may observe some difference in the behavior of the feature or functionality, but this not because of the failure. This may happen because of the wrong test data entered, tester may not be aware of the feature or functionality or because of the bad environment. Because of these reasons incidents are reported. They are known as incident report. The condition or situation which requires further analysis or clarification is known as incident. To deal with the incidents the programmer need to do the analysis that whether this incident has occurred because of the failure or not.
It’s not necessary that defects or bugs introduced in the product are only by the software. To understand it further let’s take an example. A bug or defect can also be introduced by a business analyst. Defects present in the specifications like requirements specification and design specifications can be detected during the reviews. When the defect or bug is caught during the review cannot result into failure because the software has not yet been executed.
These defects or bugs are reported not to blame the developers or any people but to judge the quality of the product. The quality of product is of utmost importance. To gain the confidence of the customers it’s very important to deliver the quality product on time.Share This: