Return to projects
Jul 29, 2025
2 min read
API Testing with RestAssured, TestNG, and Allure in Java πŸ§ͺπŸš€

API Testing with RestAssured, TestNG, and Allure in Java πŸ§ͺπŸš€

Automated testing for a REST API using Java, RestAssured, TestNG, and Allure reports, with continuous integration through GitHub Actions.

In this personal project, I applied automated testing practices for the public API ReqRes, combining several key tools for a modern QA workflow:

πŸ“¦ Tech stack used:

  • Tests written in Java, using RestAssured as the HTTP client.
  • Well-structured test classes using TestNG, with grouping via @Test(groups = "...").
  • Detailed and visual reports generated with Allure.
  • A GitHub Actions CI pipeline that automatically runs tests and publishes the Allure report via GitHub Pages.

screen-deploy-report-github-pages

screen-allure-report


πŸ” What do the tests cover?

  • Positive and negative login and registration cases.
  • User retrieval by ID.
  • Idempotency verification.
  • JSON schema validation.
  • Validation of status codes, headers, and required fields.
  • Basic performance checks (e.g., response time assertions).

βš™οΈ Why this project?

  • To provide a concrete and public example of how to structure an API testing project in Java.
  • Because RestAssured remains a powerful and flexible tool in the QA world.
  • Because I believe any serious testing process should include automation and visual reporting.
  • And because I wanted to practice real CI/CD integration using GitHub Actions.

πŸ”— Repository

πŸ‘‰ View the project on GitHub
πŸ“Š Check the Allure report online


πŸ’‘ If you’re learning RestAssured or want to structure your own API testing framework, this project can serve as a base or source of inspiration.