Destructive Testing In Software Testing

Destructive testing is the destruction of the system to check the quality of software. It is used to check the robustness of the software and failure points. In this testing, testers fail the application to determine failure points and robustness of application. Having knowledge of all requirements is not mandatory to do such testing, a little knowledge is enough to carry out this testing.

Destructive testing determines the service life of the product and any weakness in the design. It verifies the uncertain behavior of user within the application. While the other testing methods focus on the functionality of the software, such testing focus on testing weakness in the design. Destructive testing, the application is failed intentionally to check its behavior.

 

Destructive Testing Strategy:

  1. When the test cases created by one tester reviewed by another tester, who is less familiar with the application. This is very helpful in finding hidden failure points.
  2. Analyzing the failure point. This one is done for determining that what could go wrong at certain points.
  3. Doing exploratory testing using run sheets which help to control test coverage and also to figure out what all is already tested. It is also helpful because exploratory testing does not need any set of test scripts or requirements, it’s just carried out with the thinking capacity of the tester.
  4. When someone else breaks the application/software intentionally and then tester can analyze various scenarios.
  5. Giving an incorrect, invalid or corrupt set of input data to the system to check the result.
  6. Destructive testing does not have any requirements so any steps can be taken to fail/break the system to get desired results.

 

destructive testing

 

Destructive Testing can use these effective testing strategies:

  1. Boundary Value Testing
  2. Loop Testing
  3. Stress Testing
  4. Regression Testing
  5. Beta Testing
  6. Black Box Testing
  7. System Testing
  8. Acceptance Testing
  9. Interface Testing
  10. Top Down Testing
  11. Equivalence Partitioning

 

What is the need of Destructive Testing?

  1. It helps to identify how the software will react when not used properly by the users.
  2. It helps to identify the points of failures in software.
  3. It helps to check the robustness of software.

 

Key Points of Destructive Testing:

  1. It is very effective to carry out.
  2. It is based on non-functional requirements so validation and verification type of testing is not effective because they work on functional testing
  3. It is mainly done by QA team.
  4. It makes sure that application will work fine even if invalid inputs are provided to the application.
  5. It helps to identify the failure points if the application is misused.
  6. It is carried out under rigorous environment until the software breaks.
  7. To build a good destructive testing strategy, it is always good to have some knowledge of requirements although it does not require knowledge of all the system and application requirements.

 

Destructive Testing verifies the following things:

  1. Improper and proper software Behavior.
  2. Valid or invalid input data.

While doing Destructive testing, the software should never accept invalid input and software should give correct output regardless of the correctness of input data.

 

Summary:

  1. Destructive testing is done to find out the point of failures which cannot be done using conventional system testing.
  2. The application is made to break to check robustness.
  3. Done by QA team mainly.
  4. It focus on weakness in design but not functionality.
  5. Does not require any Business requirements.
  6. It helps to determine the service life of the product.
  7. It is performed under most severe operating conditions.

If you are not a regular reader of this website then highly recommends you Sign up for our free email newsletter!! Sign up just providing your email address below:

Enter your email address:

Check email in your inbox for confirmation to get latest updates Software Testing for free.

Happy Testing!!!

Leave a Comment

Share This Post