REST API Testing Table of Contents


Table of Content
 


Module 1: REST API Basics and Terminology

  • Introduction to REST API and its role in project architecture
  • Understanding GET, POST, PUT, DELETE and CRUD operations
  • Path parameters, query parameters, and headers in REST API
  • HTTP status codes and response structures

Module 2: Getting Started with REST API Testing

  • Introduction to Postman and manual API testing
  • Executing GET, POST, PUT, and DELETE requests through Postman
  • Validating API responses manually
  • Understanding request/response cycles using real-world API examples

Module 3: REST Assured Setup for API Automation Testing

  • Setting up a REST Assured Maven project with Java and Eclipse
  • Building a basic REST API automation testing framework
  • Validating status codes and response structure through automated code

Module 4: Validating REST API Responses

  • Assertions on JSON response body and headers
  • Parsing JSON response bodies using JSON Path
  • Integrating multiple APIs with common JSON response values
  • Building end-to-end automation using GET, POST, and PUT methods
  • Importance of JUnit/TestNG assertions in response validation

Module 5: Working with Complex JSON Structures

  • Understanding nested JSON structures and array notations
  • Retrieving JSON array size and elements using JSON Path
  • Iterating over JSON array elements
  • Retrieving JSON nodes using conditional logic
  • Solving real-world business logic using JSON responses

Module 6: Handling Dynamic JSON Payloads

  • Importance of dynamic JSON payloads in API testing
  • Sending parameters to payloads through tests
  • Understanding data providers for parameterization
  • Parameterizing API tests with multiple datasets
  • Handling static JSON payloads

Module 7: Real-World API Automation Example

  • Understanding how a real-world API works end-to-end
  • Authentication for API requests
  • Creating and validating API resources (GET/POST)
  • Defining path parameters in automated code
  • Sending attachments using multipart methods
  • Combining query and path parameters in a single test
  • Parsing complex JSON responses with code logic
  • Importance of assertions and HTTP validations

Module 8: OAuth 2.0 Authorization

  • Introduction to OAuth 2.0 and different grant types
  • Understanding the grant type authorization flow
  • Flow procedure for achieving OAuth 2.0 authentication
  • Practicing an OAuth 2.0 project end-to-end

Module 9: Automating OAuth 2.0 Authorization Flows

  • Performing automation testing for OAuth-based projects
  • Integrating UI automation to generate authorization codes
  • Formatting and retrieving codes programmatically
  • Handling the client credentials grant type

Module 10: Serialization & Deserialization Using POJO Classes

  • Understanding serialization and deserialization concepts
  • Libraries required to support serialization
  • Strategies for parsing complex nested JSON using POJO classes
  • Creating POJO classes for nested JSON arrays
  • End-to-end automation examples using POJO deserialization
  • Solving complex JSON queries using POJO methods

Module 11: Serialization of Input Payloads

  • Constructing JSON payloads using POJO classes
  • Implementing serialization for real-world API examples
  • End-to-end testing with serialization

Module 12: Request and Response Spec Builders

  • Significance of spec builders in REST Assured
  • Practical implementation of spec builders to optimize code

Module 13: Framework Fundamentals — Maven and BDD Basics

  • Importance of Maven in framework development
  • Installing and configuring Maven
  • Understanding Maven terminology
  • Creating and importing a Maven project
  • Introduction to Cucumber and Gherkin syntax
  • Understanding scenario outlines and step definitions
  • Creating a project template in Cucumber
  • Understanding automation terminology and regular expressions in feature files

Module 14: Building a Cucumber BDD API Framework

  • Creating a Maven project with Cucumber and REST Assured dependencies
  • Building feature files for REST Assured API tests
  • Building test runner and step definition files
  • Implementing reusable components in step definitions
  • Data-driven and parameterized API testing using Cucumber
  • Using enum classes to remove hardcoded resource details
  • Building end-to-end test cases in framework standards
  • Implementing hooks for test preconditions
  • Generating Cucumber HTML reports

Module 15: CI/CD Integration

  • Introduction to Jenkins as a CI tool
  • Integrating the API framework into Jenkins
  • Setting up parameterized Jenkins jobs for API test execution

Module 16: Version Control with Git

  • Introduction to Git and GitHub
  • Creating Git configurations and repositories
  • Staging, committing, and pushing code
  • Working with remote repositories
  • Branching and resolving merge conflicts

Module 17: Data-Driven Testing with Excel

  • Introduction to Apache POI for Excel integration
  • Reading rows, cells, and conditional data from Excel
  • Practical exercises on Excel-driven API testing
  • Converting data structures into JSON for testing

Module 18: Java Fundamentals for API Automation

  • Core Java programming principles
  • Classes, objects, and interfaces in Java
  • Strings and string manipulation
  • Inheritance and its practical applications
  • Arrays — single-dimensional and multidimensional



Apply for the Certification

https://www.vskills.in/certification/testing/rest-api-testing-certification-course

 For Support