Автор: Алименков Николай.
На последнем Agile Gathering V мне неоднократно задавали вопрос: "Как можно писать acceptance тесты на несуществующий функционал?". Я приводил примеры написания таких тестов с использованием некоторых фреймворков. Но потом я в очередной раз задумался о самом понятии acceptance теста. Acceptance (приемочное) тестирование служит для того, чтобы принимать сделанный функционал и делать выводы о его готовности. Когда функционал принят, то все acceptance тесты переходят в разряд регрессионных тестов (для проверки работоспособности существующего функционала).
С ручными acceptance тестами все просто. Берем acceptance критерии, которые предоставляет заказчик (одна из причин, почему QA должны участвовать в планировании и тесно работать с заказчиками при подготовке тестов), снабжаем данными и оформляем в виде тест кейса. Когда функционал готов, то тест кейс прогоняется и делается вывод о его готовности. Проблема только в том, что для повторения написанных тес…