Skip to content

MaximMxwave/Python_Pytest_Selenium_Requests_Allure

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🤖🧪 Автотесты UI & API | Python + Pytest + Selenium + Requests + Allure

status Python Pytest Selenium Requests Allure


📌 Описание проекта

Проект закрытый для POST запросов, но GET можно выполнять без токена: pokemonbattle.ru

В данном репозитории представлены автоматизированные тесты для проверки:

  • 🌐 UI: авторизация и функциональность на сайте pokemonbattle-stage.ru с помощью Selenium WebDriver
  • 🔗 API: работа с REST API (создание, изменение и действия с покемонами) через библиотеку Requests

Все тесты запускаются под управлением Pytest, с возможностью параметризации, фикстур и интеграции с отчётами.


⚙️ Стек технологий

  • 🐍 Python 3.12
  • 🧪 Pytest (юнит и интеграционные тесты)
  • 🌍 Selenium WebDriver (UI автотесты)
  • 📡 Requests (API тесты)
  • 📊 Allure (репорты и визуализация результатов)

✅ Тест-кейсы, которые автоматизировал

  • Создание покемона POST /pokemons
  • Смена имени покемона PUT /pokemons
  • Поймать покемона в покебол POST /trainers/add_pokeball
  • Проверить ответ метода GET /trainers

Ожидаемый ответ:

  • response status code = 200
  • в ответе в json приходит корректное поле trainer_name
  • в ответе приходит корректное поле id в json

📸 Скриншоты

Pytest список собранных тестов

image

Запуск тестов через Pytest. Фреймворк собирает тестовые функции и готовит их к выполнению — отображается список найденных тестов с путями к файлам. Это подтверждает корректную структуру проекта и наличие рабочих автотестов.


Запуск UI-теста Selenium

image

Авторизация на сайте pokemonbattle-stage.ru через Selenium WebDriver. Тест открывает браузер, вводит email и пароль, и проверяет успешный вход.


Запуск API-теста Requests + Pytest

image

Тесты REST API с помощью библиотеки Requests. Проверяется корректность кода ответа, имя тренера и параметры в JSON-ответе.


Успешное выполнение тестов Pytest

image

Итог выполнения тестов через Pytest. Все тесты завершились успешно ✔️


Отчёт Allure

image


💻 Локальный запуск тестов из терминала

  1. Скачать проект
  2. Перейти через терминал в директорию проекта
  3. Выполнить команду:

Создаём виртуальное окружение внутри папки проекта.

Далее команды для MacOS (инструкция для Windows есть вот тут)

python3 -m venv venv
source venv/bin/activate
  1. Устанавливаем библиотеки
python3 -m pip install -r requirements.txt
  1. Запускаем
pytest tests/api/test_pokemons.py
pytest tests/web/test_pokemon_web.py

📊 Генерация отчётов Allure

  1. Запустить тесты с сохранением результатов
pytest --alluredir=allure_results
  1. Открыть отчёт в браузере
allure serve allure_results

Ожидаемый результат: формируется отчёт с подробной статистикой по всем автотестам.

👨‍💻 Разработал:

Максим Олесов (@Mxwave)

Made by Maxim Olesov

About

Автотесты UI и API | Python + Pytest + Selenium + Requests + Allure

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages