- Стянуть репу
- Подтянуть зависимости:
python3 -m pip install -r requirements.txt
- После установки зависимостей прописать:
playwright install
- Создать файл .env в корневой директории и добавить значения переменным:
ENV=prod
,AUTH_LOGIN = standard_user
,AUTH_PASSWORD = secret_sauce
(Актуально если нету файла .env) - Запустить тесты командой:
pytest
(по умолчанию тесты запустятся в Chrome). Для запуска только одной группы тестов использовать модуль-m
:- Регресс:
pytest -m regression
- Smoke:
pytest -m smoke
- Запуск отдельных тестов: нужно перейти в папку tests командой
cd tests
и запустить нужный тест командойpytest -s test_buy_product.py
(пример)
- Регресс:
- conftest.py – дозволяє керувати фікстурами.
- README.md – дозволяє додати опис нашого проекту.
- .gitignore - в ньому вказуються файли та каталоги, які Git ігноруватиме при пуші в master. Це допоможе не засмічувати наш проект тимчасовими та непотрібними файлами.
- pytest.ini - конфігураційний файл. Я використовую його для визначення маркерів користувача і інтеграції з плагінами і розширеннями. (За допомогою маркерів зручно розділяти автотести, наприклад, на smoke та регресійні – залежно від ситуації будуть проганятися потрібні нам тести).
- Locators - тут будуть локатори для різних сторінок.
- data - тут зберігатимуться оточення, константи, асерти.
- fixtures - тут розташовуватимуться модулі з фікстурами Pytest.
- pages - тут зберігатимуться файли з методами взаємодії з елементами веб-сторінки.
- tests - тут будуть автотести.
- На первом месте — Data attributes.
- На втором — CSS-селекторы.
- На третьем — XPath (использую при более сложных сценариях поиска, как один из примеров — если хочу привязаться к какому-то элементу по тексту).