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
