As agile developers, we talk a lot about ‘tests’ and ‘testing’, but it is important to recognize that we’re often doing so with different assumptions and motivations than a traditional Quality Assurance departments.
Agile testing is, in most ways, about making it easier to develop. Agile testing is about the process of building, rather than the validation of an end-product. The value that we get from agile testing is in making it faster and easier to create code because tests help us think through what we’re trying to build and they give us feedback as we build.
That’s not to say that agile testing doesn’t improve the quality of the end product; quite the contrary. Applications built using agile processes like i-Proving are usually of much higher quality. The process promotes the quality of the final result because of the testing (in tandem with the Continuous Integration process).
Automated test suites and frequent integration ensure system stability and allow project teams to efficiently code, integrate and test changes or new features.
- Properties of Good Tests