Как писать тесты для форм (Cucumber)?

Всем привет

Допустим мы хотим проверить форму регистрации.

Вариант 1:
Когда пользователь открыл форму регистрации
И        пользователь ввел "username" в поле "Логин"
И        пользователь ввел "password" в поле "Пароль"
И        пользователь нажал кнопку "Зарегистрироваться"
Тогда  пользователь видит уведомление "Вы были успешно зарегистрированы"


Меня беспокоит что это рабочий тест, но он не проверяет работу функциональности, т.е. мы могли получить уведомление, но фактически пользователь мог быть не создан.

Если писать такие тесты для форм с множеством данных, там еще опаснее, потому что отдельные поля могут не сохраниться, но само сохранение формы будет успешно завершено. Да, это ошибка на сервере, но функционально сохранение формы не отработает корректно, и через такие тесты (как выше) мы об этом не узнаем.

Поэтому вариант 2:
Когда пользователь открыл форму регистрации
И        пользователь ввел "username" в поле "Логин"
И        пользователь ввел "password" в поле "Пароль"
И        пользователь нажал кнопку "Зарегистрироваться"
Тогда  пользователь видит уведомление "Вы были успешно зарегистрированы" 
Когда  пользователь открыл форму авторизации
И         пользователь ввел "username" в поле "Логин"
И         пользователь ввел "password" в поле "Пароль"
Тогда   пользователь видит уведомление "Вы успешно вошли в систему"


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

Ваши мысли?
Есть ли смысл идти по варианту 2, и почему?
  • Вопрос задан
  • 219 просмотров
Пригласить эксперта
Ответы на вопрос 1
AlexPancho
@AlexPancho
ваш вариант 2 - это по сути уже тест-сюит - т.е. сборник двух связанных тесткейсов
и если у вас есть атомарный тест-кейс 1 "выполнить регистрацию с данными А"
и тест-кейс 2 "войти с данными А"
то ничто не мешает написать вам тест-сюит из двух пунктов
1 выполнить ТК 1
2 выполнить ТК 2
это в "классических" тест-кейсах нельзя в тесте 1 ссылаться на тест 2. В программных это можно и нужно делать, главное, чтобы вы на выходе понимали где именно произошла ошибка и что к ней привело
Ответ написан
Ваш ответ на вопрос

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

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