Software Testing Myths

1. Testing is Too Expensive

Escaped defects in production environment is far more too expensive!! Sometimes, the Management may plan to pay less for testing during software development and planning to pay more for maintenance or correction later. Early testing saves both time and cost in many aspects, however reducing the cost without testing may result in insufficient test coverage, usability issue, etc & incorrect design of a software application rendering the product useless.

2. Testing is Time-Consuming

Testing is never a time-consuming process if the Test Plan & Test Design are prepared early. However diagnosing and fixing the errors identified during proper testing is a time-consuming but productive activity.

3. Only Fully Developed Products are Tested

Incorrect!! Static Testing must be be done during the User Requirement phase. Testing depends on the source code but reviewing requirements and developing test cases is independent from the developed code. In addition, Testing has a couple of Testing activities that must be carried on throughout the project. The V-model, iterative or incremental approach as SDLC model may reduce the dependency of testing on the fully developed software.

4. Complete Testing is Possible

It becomes an issue when a client or tester thinks that complete testing is possible. It is possible that all paths have been tested by the team but occurrence of complete testing is never possible. There might be some scenarios that are never executed by the test team or the client during the software development life cycle and may be executed once the project has been deployed.

5. A Tested Software is Bug-Free

This is a very common myth that the clients, project managers, and the management team believes in. No one can claim with absolute certainty that a software application is 100% bug-free even if a tester with superb testing skills has tested the application.

6. Missed Defects are due to Testers

It is not a correct approach to blame testers for bugs that remain in the application even after testing has been performed. This myth relates to Time, Cost, and Requirements changing Constraints. However the test strategy may also result in bugs being missed by the testing team.

7. Testers are Responsible for Quality of Product

Everybody is responsible. It is a very common misinterpretation that only testers or the testing team should be responsible for product quality. Testers’ responsibilities include the identification of bugs to the stakeholders and then it is their decision whether they will fix the bug or release the software. Releasing the software at the time puts more pressure on the testers, as they will be blamed for any error.

8. Test Automation should be used everywhere

Yes, it is true that Test Automation reduces the testing time, but it is not possible to start test automation at any time during software development. Test automaton should be started when the software has been manually tested and is stable to some extent. Moreover, test automation can never be used if requirements keep changing.

9. Anyone can Test a Software Application

People outside the IT industry think and even believe that anyone can test a software and testing is not a creative job. However testers know very well that this is a myth. Thinking alternative scenarios, try to crash a software with the intent to explore potential bugs is not possible for the person who developed it.

10. A Tester's only Task is to Find Bugs

Finding bugs in a software is the task of the testers, but at the same time, they are domain experts of the particular software. Developers are only responsible for the specific component or area that is assigned to them but testers understand the overall workings of the software, what the dependencies are, and the impacts of one module on another module.