Friday, 25 May 2012

Why Software Testing . . . ??

Before we proceed for any type of concepts on Automation testing or testing techniques, it is very important to discuss a very common question very uncommonly asked ::

NEED OF SOFTWARE TESTING AS A SEPARATE FIELD . . . ??              

Well there could be n number of points we can discuss but among all of them, the very first one and the obvious one is ::

    1.   Humans are prone to commit errors and hence, someone is required to detect the same. In fact, an error is  what we can surely do without an error. . . .   :)

    2.  Another reason could be the TIME and BUDGET constraints which in turn results in unnecessary  pressures and ultimately induces DEFECTS in the application.

    3.   We should not forget that there also occurs a number of EGO conflicting issues along with the COMMUNICATION & UNDERSTANDING GAPS between the business analysts and the application developers during the development phase, all of them results in BUGS . . . .!!!

    4.   One more prominent reason for following a complete testing cycle is that as it helps us to generate a QUALITY METRICS of the application under test.

    5.   Derived from the above point only, testing cycle measures the extent to which the requirements have been met in the end product, so that we can be answerable to the client that these are requirements that are working fine.

    6.   Testing an application by PRO TESTERS helps us to test the business scenarios and the test data combinations from the END USER PERSPECTIVE which in turn helps in finding more realistic BUGS . . . .!!!

    7.   A separate testing phase is also required to test the NON – FUNCTIONAL aspect of the testing, which includes scalability, stress, performance, security, negative scenarios etc as effective testing helps us to know the WEAK AREAS of the application.

    8.   As you  can see, almost all of the mentioned points are kind of theoretical opinions but let me tell you, there are so many more important reasons for not allowing a software to go live without a solid testing. As a defect in live application can cause LOSS OF MONEY, LOSS OF TIME, DAMAGE TO BUSINESS REPUTATION or INJURY or even DEATH.

And now if we try to conclude the discussion, we can easily say that all the reasons points in one direction which can be defined as, A separate phase for software testing is required to have the CONFIDENCE IN THE SYSTEM. . . .

Well this is my first post to this blog and definitely will be focusing on the automation testing concepts in the coming posts . . . .

Feel free to add more valuable inputs . . . .!!

Cheers . . !!
# Hims