8 Software teSting interview QueStionS
In traditional testing methodology (sad to say many companies still have
that attitude) testing is always done after the build and execution phases. But
that’s a wrong way of thinking because the earlier we catch a defect, the more
cost effective it is. For instance, fixing a defect in maintenance is ten times
more costly than fixing it during execution.
Testing after code and build is a traditional approach and many companies
have improved on this philosophy. Testing should occur in conjunction with
each phase as shown in the following figure.
In the requirement phase we can verify if the requirements are met
according to the customer needs. During design we can check whether
the design document covers all the requirements. In this stage we can also
generate rough functional data. We can also review the design document
from the architecture and the correctness perspectives. In the build and
execution phase we can execute unit test cases and generate structural and
functional data. And finally comes the testing phase done in the traditional
way. i.e., run the system test cases and see if the system works according to the
requirements. During installation we need to see if the system is compatible
with the software. Finally, during the maintenance phase when any fixes are
made we can retest the fixes and follow the regression testing.
FIGURE 12 Traditional way of testing