Skip to content

VK-BMSTU-QA/e2e-spring-2022

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

e2e-spring-2022

Cеминар по E2E тестам

Установка

Убедитесь, что у вас установлены nvm и npm.

Рекомендую использовать Node.js версии 14 и выше

  • форкаем и клонируем репозиторий
  • nvm use, если нет нужной версии, устанавливаем: nvm install 14.17.4, затем снова nvm use
  • устанавливаем зависимости npm i

Также вам потребуется браузер Chrome на вашей локальной машине, желательно иметь хром версии 99 и выше.

Запуск тестов

Команда:

LOGIN=<your_test_email> PASSWORD=<your_password> npm run wdio

Чтобы запустить отдельный тест

LOGIN=<your_test_email> PASSWORD=<your_password> npm run wdio --spec ./test/specs/login.e2e.ts

ВАЖНО! Не храните логин и пароль в git, за это будет снят 1 балл

Allure-репорт

Для запуска аллюр-репортера выполните команду: npm run report

Задание

  1. Пишем тест на авторизацию (если у вас почтовый проект - используем готовый метод авторизации и пишем 3 других теста из чек-листа)

  2. Пишем еще 2 теста из своего чек-листа. Эти тесты не должны повторять тесты товарищей по команде.

    Итого должно быть 3 теста минимум

  3. Если осталось время, пишем 4-й тест за 2 доп. балла.

  4. Делаем скриншот пройденных тестов в allure, кладем в корень проекта, пушим в гит

  5. Делаем PR и скидываем в табличку до 22:00

Code review - часть задания

  1. Берем из таблички 2 пулл-реквеста на проверку
  2. Проверяем код не только на код-стайл, ошибки и опечатки, но и придерживаемся чек-листа:
  • Никаких browser.pause, если нужно ждать элемент - использовать waitFor;
  • Никаких циклов и условных операторов в коде самого теста, логику прячем в page;
  • Селекторы должны быть максимально короткими;
  • Названия методов должны быть краткими и понятными, чтобы тест читался легко, как дока;
  • Логика работы с браузером должна быть в pages, ассерты - в самом тесте;
  • Каждый тест в отдельном файле, чтобы у каждого теста был новый инстанс браузера
  1. Проверить и получить апрувы надо до 09.04.22 (суббота) 18:00

FAQ

0. У меня падает тест на шаге...

Вставляем await browser.debug(); перед падающим шагом и дебажим приложение в браузере

1. А как мне сделать ... в тесте?

Шаг 1. Смотрим документацию по webdriverio.

Шаг 2. Если не помогло, задать вопрос

2. Где взять ящик/аккаунт для тестов?

Его надо самим зарегистрировать в вашем проекте заранее. Логин и пароль в тесты нужно передавать через переменные окружения LOGIN и PASSWORD, в коде не должен быть указан пароль.

About

Репозиторий для Семинара по E2E тестам

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published