Любые вопросы по решению задач задавайте в чате учебной группы.
Не забывайте про важные моменты, без которых работы не будут приниматься на проверку:
- корректное оформление репозиториев;
- использование .gitignore;
- форматирование кода.
- Сделайте форк проекта с лекции.
- Добавьте отчёты о покрытии.
Ваши отчёты должны создаваться во время прогона тестов с помощью скрипта. Его нужно добавить в блок со скриптами в файле package.json.
Скрипт для запуска оценки покрытия должен запускать команду "jest --collectCoverage". Создайте нужный скрипт по аналогии с существующим скриптом "test".
Для корректной работы, нужно задать критерии, где будут работать отчёты, а также параметры, которые исключают проверку в определённых местах проекта.
В нашем случае мы хотим:
- проверять покрытие кода во всех файлах с расширениями
.jsи.jsx; - исключать из проверки директорию
"/node_modules/"; - исключать из проверки директорию
"/coverage/", в которой будут создаваться отчёты.
Документация, которая вам поможет, есть по ссылке.
- Добавьте желаемые параметры покрытия:
"coverageThreshold": {
"branches": 100,
"functions": 100,
"lines": 100
}
- Запустите тесты с проверкой покрытия при помощи нового скрипта:
Подсказка.
Примерно так должны выглядеть скрипт и команда для его запуска:
"coverage": "jest --collectCoverage"
npm run coverage
-
Допишите недостающие тесты для покрытия 100% по всем параметрам. Рекомендуем использовать отчёт из папки
/coverageи дебагер, чтобы понять, какой код недостаточно покрыт тестами. -
Запушьте репозиторий и сдайте ссылку на проверку.
Нужно протестировать авторизацию на сайте netology.ru.
- Подготовьте тестовые данные:
- создайте файл
user.jsи положите в него свой email и password как константы; - добавьте файл
user.jsв.gitignore. Важно. Проследите, чтобы email и password не попали в ваш репозиторий, иначе ваш проект не пройдёт аудит безопасности, а злоумышленники получат ваши данные.
- Создайте тест 1 «Успешная авторизация»:
- откройте форму авторизации;
- добавьте ваш email в поле для ввода email;
- добавьте ваш пароль в поле для ввода пароля;
- нажмите на кнопку
Войти.
- Проверьте ожидаемый результат:
- проверьте, что открылась страница профиля;
- удостоверьтесь, что страница профиля открыта, например, проверив элемент
h2и текст заголовка.
- Создайте тест 2 «Неуспешная авторизация»:
- повторите тест 1, используя невалидные данные для авторизации.
- Проверьте результат:
- проверьте текст об ошибке в появившемся блоке.
-
Запушьте репозиторий с тестами на GitHub.
-
Отправьте ссылку на репозиторий на проверку.
Усложнённая версия второго задания: нужно добавить автоматические скриншоты для каждого экрана. Сделать это можно с помощью playwright screenshots.
- Выясните, как настроить эту функциональность.
- На каждый переход в тесте из задания 2 сделайте скриншоты.
- Запушьте репозиторий с тестами, конфигурационными файлами на GitHub.
- Скриншоты приложите в раздел issues.
- Отправьте ссылку на репозиторий на проверку.