API test automation project using REST Assured and TestNG.
- Dogs API (
dog.ceo/api) - breed listings and images - JSONPlaceholder (
jsonplaceholder.typicode.com) - CRUD user operations - OpenWeatherMap (
api.openweathermap.org) - weather station management (requires paid API key)
- Java 21
- REST Assured 5.4.0
- TestNG 7.10.2
- Allure Reports 2.27.0
- Maven
- Clone the repo
- Copy
.env.exampleto.envand fill in your API keys:
cp .env.example .env
- Install dependencies:
mvn clean install -DskipTests
# All tests
mvn clean test
# Specific suite
mvn test -Dtest="Tests.Dogs.test"
mvn test -Dtest="Tests.ReqRes.ReqResTests"
mvn test -Dtest="Tests.WeatherApi.test"
# Multiple suites
mvn test -Dtest="Tests.Dogs.test,Tests.ReqRes.ReqResTests"See .env.example for required variables. Never commit .env.
src/test/java/
├── Common/ # Shared utilities, builders, test data
├── Tests/
│ ├── Dogs/ # Dog API tests
│ ├── ReqRes/ # User API tests
│ └── WeatherApi/ # Weather station tests