Active and Passive Testing

There are numerous ways to perform software testing. However, we may test a software product by making or without making interaction with it. The concept of active and passive testing is based on the similar fact of having interaction or no-interaction with a software product in order to evaluate it.

Active Testing

It's a testing technique, where a tester generally interacts and directly executes testing activities over a software product in order to examine it. Generally, a tester feeds the software product with the test input data, and analyses the results, being provided or shown by the software system.

In this technique, a tester starts with a mental model of a software product, which gradually develops and enhanced during the course of consistent interaction with the software.

The basic working of the active testing technique may be seen through the following steps:

  • With the execution of each and every testing activity, model is examined to check whether the client's requirements are fulfilled or not.
  • Based on the results of the above said examination, one of the following inferences may be considered.
    • Model is fulfilling the specified requirements.
    • Model needs to be adapted.
    • There is a problem in the software product.
  • Consistent churning out with an active use of the brain through the testing process generates new ideas, test data, test cases to fulfil the requirements.
  • Meanwhile, during the progress of the process, a tester, with his consistent focus on the objectives to be achieved may note down significant points or things, which may be used at a later stage or may be followed up to find and recognize the problems and issues in the software product.

Passive Testing

This testing methodology is just opposite to active testing. In this technique, a tester does not get interacted with a software product, and evaluates it just by observing and monitoring the working of the system. No test data are being used to test the software product.

Passive testing is generally conducted by the testing team where they only study and follows the script in order to get details about the software product. They just go through the test scripts in order to examine the procedures, considered for carrying out the testing such as how the testing will be performed, what will be tested, and many such things. This gives the insight of a testing process potential, to evaluate a software product.

Due to non-usage of brains by a tester, and just making decision based on the study, it is termed as passive testing. It may be carried out either manually or through automation. An automated test case makes a tester aware of the past workings, which may prove to be useful. Moreover, automation for passive testing may generates more free time for the active testing, if implemented well otherwise may have negative or degraded results.