Автоматизированное тестирование веб-сервиса для покупки туров:
- Обычная оплата по дебетовой карте
- Кредитование по данным банковской карты
Технологии:
Инструменты:
graph LR
A[Автотесты] --> B[aqa-shop.jar:8080]
B --> C[Payment Gate]
B --> D[Credit Gate]
B --> E[(MySQL:3306)]
B --> F[(PostgreSQL:5432)]
C & D --> G[Bank Simulator:9999]
tour-pay-gateway-tests/
├── artifacts/aqa-shop.jar # Тестируемый веб-сервис
├── documentation # Документация
├── gate-simulator/ # Эмулятор банка
├── src/
│ └── test/java/ # Автотесты (UI + DB + API)
├── application.properties # Конфигурация для подключения к СУБД и банковским сервисам
├── build.gradle # Файл конфигурации Gradle с зависимостями для Selenide, JUnit, Allure и др.
└── docker-compose.yml # Контейнеры MySQL + PostgreSQL + Bank Simulator
git clone https://github.com/levvolkov/tour-pay-gateway-tests.git
# Соберет контейнеры MySQL, PostgreSQL, Bank Simulator
docker compose up -d
# Для запуска приложение на MySQL СУБД
./gradlew runMySQL
# Для запуска приложение на PostgreSQL СУБД
./gradlew runPostgreSQL
# Тесты в браузере Chrome
./gradlew clean testMySQLChrome
# Тесты в браузере Firefox
./gradlew clean testMySQLFirefox
# Тесты в браузере Safari
./gradlew clean testMySQLSafari
# Тесты в браузере Chrome
./gradlew clean testPostgreSQLChrome
# Тесты в браузере Firefox
./gradlew clean testPostgreSQLFirefox
# Тесты в браузере Safari
./gradlew clean testPostgreSQLSafari
./gradlew clean test --tests GateSimulatorApiTest
./gradlew allureServe
Warning
Ошибка запуска приложения: если порт занят
# Найти PID процесса, использующий порт:
lsof -i :8080
# Принудительное завершение с помощью флага -9:
kill -9 <PID>