Пишите ли вы E2E тесты независимо друг от друга?

Возьмем CRUD, к которому мы хотим написать е2е тесты. Часто говорят, что тесты должны быть независимы друг от друга. Мы можем написать тесты двумя способами

1) Последовательные тесты, которые зависят друг от друга. Пример - сначала тестируется CREATE. Если всё хорошо - тестируем UPDATE. Дальше тестируем READ. В конце тестируем DELETE. Все протестировали, после себя очистили базу данных, минимум дубликации кода.

2) Независимые тесты. Здесь для каждого метода придется писать подготовочный сетап и очистку после себя, например, для тестирования UPDATE нужно будет вначале сделать CREATE, а потом DELETE. При этом косвенная зависимость сохраняется (?) Если например, CREATE работает неисправно, то UPDATE тоже выдаст ошибку

Пишите ли вы е2е тесты первым способом или все же пытаетесь делать независимые тесты? Почему?
  • Вопрос задан
  • 308 просмотров
Решения вопроса 1
vabka
@vabka
Токсичный шарпист
Пробовал и так и так:
1. Чисто e2e, когда взаимодействие с сервером происходит через HTTP
2. Независимое, когда заранее создаются все данные в БД, потом делается пара действий через HTTP, потом всё чистится.

Первый чуть проще, а вторым можно симулировать необычные ситуации, или создавать такое состояние, которое сложно или невозможно получить одним запросом за короткое время (например нужно ждать неделю)
Пишите ли вы е2е тесты первым способом или все же пытаетесь делать независимые тесты? Почему?

Обычно пишем так, как сложилось в проекте исторически.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы