Skip to content
This repository is currently being migrated. It's locked while the migration is in progress.

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

API Automation Framework

A comprehensive REST Assured-based API testing framework with a well-organized structure, covering authentication, customers, concepts, applications, countries, and cart/coupon functionality.

Project Structure

src/
├── main/java/
│   └── utils/
│       └── RateLimitHandler.java    # Rate limit handling utility
└── test/
    ├── java/
    │   ├── base/              # Base test classes and setup
    │   ├── tests/             # Test classes
    │   │   ├── applications/  # Application CRUD tests
    │   │   ├── auth/          # Authentication tests (login, OTP, logout, etc.)
    │   │   ├── concepts/      # Concept CRUD tests
    │   │   ├── countries/     # Countries API tests
    │   │   └── customers/     # Customer management tests
    │   ├── endpoints/         # API endpoint implementations
    │   ├── payloads/          # POJOs for request/response models
    │   ├── specs/             # Request/Response specifications
    │   ├── utils/             # Utility classes
    │   └── constants/         # Constants (endpoints, etc.)
    └── resources/
        ├── config.properties  # Configuration file
        ├── testdata/          # Test data files (JSON, CSV, etc.)
        ├── schemas/           # JSON schemas for validation
        └── testcases/         # Test case documentation

Prerequisites

  • Java 11 or higher
  • Maven 3.6+

Setup

  1. Clone the repository
  2. Update src/test/resources/config.properties with your API base URL
  3. Run tests: mvn clean test

Running Tests

# Run all tests
mvn clean test

# Run specific test class
mvn test -Dtest=UserApiTest

# Run specific test suite
mvn test -Dtest=tests.auth.*

# Generate Allure report
mvn clean test allure:report

# View Allure report
mvn allure:serve

Configuration

Edit src/test/resources/config.properties to configure:

  • Base URL
  • Timeouts
  • Test data
  • Environment settings

Features

  • REST Assured for API testing
  • JSON Schema validation
  • POJO-based request/response handling
  • Reusable endpoint classes
  • Utility classes for common operations (RateLimitHandler, etc.)
  • TestNG for test execution
  • Configurable test data
  • Allure reporting integration
  • Edge case testing for auth and customer APIs
  • Comprehensive test coverage across multiple API domains

Test Coverage

Module Tests
Auth Login, Guest Login, Employee Login, OTP Verify, Resend OTP, Reset Password, Logout, WhoAmI, Edge Cases
Customers Create, Get, List, Update, Delete, Favorites, Orders, Edge Cases
Concepts Create, Get, List, Update
Applications Create, Get, Update Theme
Countries List Countries

Reports

  • Allure Reports: Generated via mvn allure:report
  • Test Results: Available in allure-results/ directory

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages