Software testing is the process used to help identify the correctness, completeness,
security and quality of developed computer software.
Software testing may be viewed as a sub-field of software quality assurance
but typically exists independently (and there may be no SQA areas in some
companies). In SQA, software process specialists and auditors take a broader
view on software and its development. They examine and change the software
engineering process itself to reduce the amount of faults that end up
in the code or deliver faster.
Regardless of the methods used or level of formality involved the desired
result of testing is a level of confidence in the software so that the
developers are confident that the software has an acceptable defect rate.
A common practice of software testing is that it is performed by an independent
group of testers after finishing the software product and before it is
shipped to the customer. This practice often results in the testing phase
being used as project buffer to compensate for project delays. Another
practice is to start software testing at the same moment the project starts
and it is a continuous process until the project finishes. |