Автоматизированное тестирование веб-сервиса для покупки туров:
- Обычная оплата по дебетовой карте
- Кредитование по данным банковской карты
Технологии:
Инструменты:
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 allureServeWarning
Ошибка запуска приложения: если порт занят
# Найти PID процесса, использующий порт:
lsof -i :8080
# Принудительное завершение с помощью флага -9:
kill -9 <PID>