Learn API Testing using Postman, SoapUI & RestAssured

Postman, RestAssured & SoapUI

Learn API  Testing using Postman, SoapUI & RestAssured
Learn API Testing using Postman, SoapUI & RestAssured

Learn API Testing using Postman, SoapUI & RestAssured udemy course

Postman, RestAssured & SoapUI

Course Overview: Mastering Back-End Testing and API Automation

In today's digital landscape, web applications heavily rely on seamless communication through web services. The dominant architecture, Representational State Transfer (REST), has become a cornerstone in modern web service development. This course aims to transform you into a proficient back-end testing expert, equipping you with the skills to navigate the evolving IT industry landscape.

Module 1: Introduction to API Testing

Client-Server Architecture

  • Understanding the Basic Architecture

  • Roles of Client and Server

API Basics

  • What is an API?

  • Why API Testing is Needed?

  • Types of APIs

  • SOAP vs. REST

Understanding Web Services

  • API vs. Web Service

  • REST API Fundamentals

  • REST API Methods (GET, POST, PUT, DELETE)

  • HTTP vs. HTTPS

  • HTTP Status Codes

Module 2: API Testing with Postman

  • Postman Introduction

    • Postman Installation

    • Creating Workspace

    • Creating Collections

    • Creating HTTP Requests (GET, POST, PUT, DELETE)

    • Saving & Editing Requests

    • Operations on Collections

  • Response Validation

    • Status Codes

    • Cookies

    • Headers

    • Response Body

    • Schema

  • Exporting & Importing Collections

  • Creating Dummy APIs for API Testing

    • NodeJS Installation

    • JSON-Server Installation

  • JavaScript Object Notation (JSON) & JSON Path

    • What is JSON?

    • Understanding JSON Object & JSON Array

    • JSON Path

  • Validating Responses (Chai Assertions)

    • Testing Status Codes

    • Testing Headers

    • Testing Cookies

    • Testing Response Time

    • Testing Response Body

  • Scripts in Postman

    • Pre-request Scripts

    • Test Scripts (Post Response Scripts)

    • JSON Schema Validation

  • Working with Variables

    • Global Variables

    • Collection Variables

    • Environment Variables

    • Local Variables

    • Data Variables

    • Set, Get & Unset Variables with Scripts

  • Postman Console

  • Chaining Requests

  • Customize Collection Run Order(Work flow)

  • Working with Data Variables/External Variables

  • Data-Driven Testing

    • Using JSON Files

    • Using CSV Files

  • File Upload & Download API Requests

  • Authorization Types

    • Basic Authorization

    • Digest Authorization

    • API Key

    • Bearer Token

    • OAuth2

  • Project Work -Online Store

    • API testing Reference documents

    • Writing API Test Cases

    • Creating Collections & Adding Requests

    • Adding Scripts (Chai Assertions)

    • Running Collections Manually

    • Scheduling Runs

  • Newman CLI

    • Install Newman

    • Install newman-reporter-html for Reporting

    • Exporting and Sharing Collections from Postman

    • Run Collections Locally via Command Prompt

    • Push Collections to GitHub and Run in Jenkins

  • Postman CLI

    • Install Postman CLI

    • Use Postman CLI to Run a Collection from Command Line

    • Set Up GitHub Actions with Postman CLI to Run Collections in CI/CD Pipeline

  • Documenting APIs

    • Create Public Documentation

    • Write Markdown Descriptions at Request, Folder, or Collection Level

    • Embed "Run in Postman" Button with Documentation

    • Preview Docs Before Publishing

    • Publish to API Network

    • Swagger

    • cURL

  • Mocking APIs

    • Set Up Mock Servers

    • Create Dynamic Mock Responses

  • Performance Testing

    • Run a performance test

    • Types of Load profiles in Postman

    • View performance test metrics

    • Inject data into virtual users

  • GraphQL

    • What is GraphQL?

    • GraphQL vs REST

    • GraphQL Core Concepts

    • GraphQL Queries - Fetching data

    • GraphQL Mutations - Writing data

    • GraphQL Subscriptions - Realtime updates

    • Create GraphQL requests in Postman

    • Postman GraphQL interface

Module 3: API Testing with RestAssured


Introduction to RestAssured

  • Overview and Importance

Setting up a RestAssured Maven Project

  • Install JDK & Eclipse IDE

  • Creating maven Project & Add dependencies

  • Configuring IDE and TestNG

Writing API Automation Scripts

  • HTTP Methods: GET, POST, PUT, DELETE

  • Different ways to Create Request Body/Payload

    • Using HashMap

    • Using org.json library

    • Using POJO Class

    • Using External JSON File

  • Handling Parameters

  • Path Parameters

  • Query Parameters

  • Headers and Cookies

Authentication Types

  • Basic Authentication

  • Digest Authentication

  • Preemptive Authentication

  • OAuth 1 and OAuth 2

File Upload & Download (Form parameters)

Parsing Response Body

  • Parsing JSON and XML Response body

  • JSON Schema and XML Schema/XSD Validations

Advanced RestAssured Features

  • API Chaining

  • Serialization and Deserialization

  • Request and Response Specification Builders

  • Root Path

  • Logging

RestAssured with GraphQL

  • Handling GraphQL Queries

  • Handling GraphQL Mutations

Framework Development

  • Building a RestAssured Framework

  • Creating Maven Project & Folder Structure

  • API End Point(Routes)

  • Understanding Schemas & Models

  • Creating of POJO Classes

  • Creating Payloads

  • Creating Configuration & Test Data files

  • Creating API Tests and add validations

  • Generating Extent & Allure Reports

  • Running Tests using TestNG(Serial & Parallel mode)

CI & CD

  • Working with Git & Github

  • Integration with Jenkins

Bonus Lectures:

  • API Testing with SoapUI & Ready API