Тестирование является ключевым компонентом гибкой (Agile) разработки. Широкое внедрение гибких методов привело к необходимости помещения в центр внимания приемов эффективного тестирования, а гибкие проекты существенно трансформировали роль тестировщиков ПО. Тем не менее, большинство функций тестировщика остается в значительной степени недопонятым.