Приемочные (Selenium) тесты перед внедрением?
Мой инструктор в основном сказал мне, что проведение тестов Selenium (приемочные) перед внедрением не имеет смысла, так как им говорят "приемочные" тесты по определенной причине.
Мы делаем странное сочетание Scrum и XP (для обучения).
Нашей целью было в основном формализовать нашу спецификацию (пользовательские истории) в этих тестах. Почему было бы плохо иметь эти тесты до того, как они будут реализованы? (Конечно, нам пришлось изменить довольно много тестов, как только мы закончили с реализацией.)
3 ответа
Если вы разрабатываете приемочные тесты до того, как напишите свой код, вы можете заранее указать, что вы ожидаете от приложения. Это цикл разработки, основанный на тестировании: написать неудачный тест, выполнить тест, выполнить рефакторинг. Наряду с тем, что вы можете выполнять цикл с юнит-тестами, вы должны делать то же самое с приемочными и интеграционными тестами, если вы разрабатываете на основе тестирования.
Есть хорошая книга о TDD и о том, как писать приемочные тесты: http://www.growing-object-oriented-software.com/
- Это имеет смысл
- Я видел / заставил это работать
- Это хорошая идея
Это даже как имя xDD - ATDD. Вы можете прочитать больше об этом со ссылкой на BDD. Где ATDD образует внешний концентрический круг, направляющий разработчиков, делающих TDD. Такие приемочные тесты могут / должны быть написаны до внедрения. Они служат целью для команды разработчиков: вы СДЕЛАНЫ, когда эти тесты пройдены.
Больше информации можно найти в списках рассылки Agile-Testing.. Еще немного моих мыслей на эту тему
Вы сказали это:
(Конечно, нам пришлось изменить довольно много тестов, как только мы закончили с реализацией.)
Повторное внедрение тестов, в которые вы уже вложили время, может быть ab **, поэтому подождите до конца: это сэкономит ваше время в долгосрочной перспективе.