Software testing, depending on the testing method employed, can be
implemented at any time in the software development process. Traditionally most
of the test effort occurs after the requirements have been defined and the
coding process has been completed, but in the Agile approaches most of the test
effort is on-going. As such, the methodology of the test is governed by the
chosen software development methodology.
Software testing can be stated as the process of validating and verifying that a
- meets the requirements that guided its design and development,
- works as expected,
- can be implemented with the same characteristics,
- and satisfies the needs of stakeholders.