Rest Assured Api Automation

Master REST Assured with Live Examples, OAuth2.0, Design Production Level Framework & Become REST API Automation Expert!

Last updated 2022-01-10 | 4.6

- Become an Expert in REST API automation using REST Assured
- Become confident and lead the API Automation effort in your project from scratch
- In-depth understanding of REST Assured Fundamentals from scratch

What you'll learn

Become an Expert in REST API automation using REST Assured
Become confident and lead the API Automation effort in your project from scratch
In-depth understanding of REST Assured Fundamentals from scratch
OAuth2.0 Live Examples - Google and Spotify API
Serialization & De-serialization with Complex POJOs [Live practice]
Design and build a production ready API automation framework step-by-step
Rest API Authentication Mechanisms with Live Examples
Learn how to use POSTMAN for REST API Execution
Learn how to Automate POSTMAN APIs using REST Assured
Learn how to mock REST APIs using POSTMAN Mock Server
Learn about Jackson Databind API [Annotations
Serialization and De-serialization]
Learn basics of TestNG
Maven
Jenkins
Git
Learn Allure Reporting and generate feature rich reports
Learn how to use Lombok to greatly reduce Boiler plate code
Confidently work with complex JSONs in request and responses
How to match full JSON body using Jackson and JSON Assert libraries
Automate session/Form based authentication + CSRF token using a demo application
Hamcrest Assertions
Automating tests using both the BDD and non-BDD styles
Java Programming Basics
Learn how to write clean test cases by following most of the industry best practices
Learn how to integrate the framework with GitHub
Learn how to auto-trigger automation from Jenkins using GitHub Web Hooks
SCM Polling and Build Frequency

* Requirements

* ***You do not need any prior REST API working experience to get started with the course***
* ***Basic Java Programming is covered in the course
* so do not worry if you do not have much Java background***
* ***No other knowledge required
* except for willingness to learn and perform hands-on while you go through the course***
* ***Do not worry if you face any issue
* I'm always available in the Q&A to quickly help you out***

Description

  • Become an Expert in REST API automation using REST Assured
  • Become confident and lead the API Automation effort in your project from scratch
  • In-depth understanding of REST Assured Fundamentals from scratch
  • OAuth2.0 Live Examples - Google and Spotify API
  • Serialization & De-serialization with Complex POJOs [Live practice]
  • Design and build a production ready API automation framework step-by-step
  • Rest API Authentication Mechanisms with Live Examples
  • Learn how to use POSTMAN for REST API Execution
  • Learn how to Automate POSTMAN APIs using REST Assured
  • Learn how to mock REST APIs using POSTMAN Mock Server
  • Learn about Jackson Databind API [Annotations, Serialization and De-serialization]
  • Learn basics of TestNG, Maven, Jenkins, Git
  • Learn Allure Reporting and generate feature rich reports
  • Learn how to use Lombok to greatly reduce Boiler plate code
  • Confidently work with complex JSONs in request and responses
  • How to match full JSON body using Jackson and JSON Assert libraries
  • Automate session/Form based authentication + CSRF token using a demo application
  • Hamcrest Assertions
  • Automating tests using both the BDD and non-BDD styles
  • Java Programming Basics
  • Learn how to write clean test cases by following most of the industry best practices
  • Learn how to integrate the framework with GitHub
  • Learn how to auto-trigger automation from Jenkins using GitHub Web Hooks, SCM Polling and Build Frequency

Course content

50 sections • 273 lectures

Welcome to the course Preview 06:09

Important: How to get a better learning experience Preview 03:06

Important: When you need my help Preview 01:32

What is API? Preview 06:00

What is Rest API? Preview 01:55

What is JSON? Preview 01:58

REST Vs HTTP Preview 02:43

API Request Anatomy Preview 03:42

Quiz

JSON Syntax and Data Types Preview 03:36

Fetch JSON using Groovy's GPath Preview 06:52

Fetch JSON using JayWay's JsonPath Preview 08:54

Groovy's GPath Vs JayWay's JsonPath Preview 02:43

Quiz

HTTP Concepts: Safe, Idempotent and Cacheable Preview 04:05

GET Preview 04:25

HEAD Preview 02:38

POST Preview 06:12

PUT Preview 04:54

DELETE Preview 03:01

OPTIONS Preview 02:46

PATCH Preview 04:10

Status Codes Preview 07:58

Status Codes - Live Examples Preview 03:54

Quiz

Setup Mock Server with Multiple Examples Preview 10:25

Use Mock Server to Practice All HTTP Status Codes Preview 02:50

Quiz

Section Intro Preview 01:57

Java Basics - Part 1 Preview 09:26

Java Basics - Part 2 Preview 10:32

Java Basics - Part 3 Preview 17:36

Java Basics - Part 4 Preview 08:44

Control Structures Preview 15:52

OOP - Inheritance and super keyword Preview 15:12

Access modifiers Preview 12:46

OOP - Encapsulation Preview 09:27

OOP - Polymorphism Preview 19:05

OOP - Abstraction using abstract class Preview 12:48

OOP - Abstraction using interface Preview 14:15

Exception handling Preview 16:30

File operations Preview 18:11

What is Rest Assured? Preview 01:36

Setup Pre-requisites Preview 02:30

Setup JAVA JDK Preview 03:58

Create project using IntelliJ Preview 13:45

Eclipse - TestNG plugin download issue - Must watch before proceeding Preview 00:15

Create project using Eclipse Preview 13:36

Quiz

Download Code from here Preview 00:11

Download the Slide Deck from here Preview 00:04

Why static imports? Preview 05:37

Method chaining concept Preview 05:07

Automate GET Request - Assert Status Code Preview 07:47

Automate GET Request - Assert Response body Preview 09:19

Automate GET Request - Extract Response Preview 02:53

Automate GET Request - Extract Single Field Preview 05:48

Hamcrest Assertion on Extracted Response Preview 02:56

What is Hamcrest and Why it is popular? Preview 04:04

Hamcrest Collection Matchers - Part 1 Preview 04:20

Hamcrest Collection Matchers - Part 2 Preview 03:34

Hamcrest Collection Matchers - Part 3 Preview 04:02

Hamcrest Collection Matchers - Part 4 Preview 02:45

Quiz

Request and Response Logging Preview 03:45

Log if Error Preview 01:59

Log if Validation Fails Preview 02:39

Blacklist Headers Preview 02:56

Quiz

What are Headers? Preview 06:59

Set Mock Environment for Headers Preview 09:52

Multiple Headers in Request Preview 04:05

Multiple Headers in Request - Using Headers Preview 01:51

Multiple Headers in Request - Using Map Preview 02:11

Multi Value Header Preview 03:51

Response Headers - Assert Preview 03:35

Response Headers - Extract Preview 04:45

Response Headers - Extract Multi Value Header Preview 02:37

Quiz

What is Request Specification? Preview 08:35

How to Reuse Request Specification? Preview 03:40

BDD to non-BDD Preview 06:23

Request Specification Builder Preview 06:20

Default Request Specification Preview 02:59

Query Request Specification Preview 03:46

Quiz

Create Response Specification Preview 07:07

Response Specification Builder Preview 02:51

Default Response Specification Preview 01:56

Quiz

Send as a File Preview 03:57

Send Nested JSON Object as a Map Preview 08:02

Send JSON Array as a List - Create Mock Request Preview 06:18

Send JSON Array as a List - Build Test Case Preview 09:03

Send JSON Array as a List - Content Type Encoding Preview 07:25

Quiz

Create a Mock Request with Complex JSON as Request Payload Preview 05:53

Send Complex JSON using Map and List Preview 16:18

Assignment - Automate Complex JSON

Automate Complex JSON

Postman Echo Introduction Preview 03:04

Single Query Parameter Preview 06:06

Multiple Query Parameters Preview 02:55

Multi Value Query Parameter Preview 02:20

Path Parameter Preview 04:45

Quiz

What is Multipart Form Data? Preview 04:17

Automate Multipart Form Data Preview 03:27

Quiz

What is Form URL Encoding? Preview 03:13

Automate Form URL Encoded Request Payload Preview 04:42

Quiz

What is JSON Schema? Preview 05:19

Automate JSON Schema Validation Preview 09:20

Class Path Options Preview 01:55

Quiz

Log Request and Response Specification to the Console Preview 04:08

Log to File Preview 04:20

Reuse Filters Preview 02:50

Serialization and De-serialization in Java Preview 01:53

Serialization and De-serialization in Rest Assured Preview 03:29

Object Mapping Support Preview 04:41

Serialize Map to JSON Object using Jackson Preview 07:14

Serialize List to JSON Array using Jackson Preview 03:46

Serialize Jackson Object Node to JSON Object Preview 07:00

Serialize Jackson Array Node to JSON Array Preview 05:40

What is POJO? Preview 08:00

Simple POJO: Create Mock Request Preview 03:18

Simple POJO: Serialization Preview 07:22

Simple POJO: De-serialization Preview 06:14

Workspace POJO: Serialize and De-serialize Preview 12:32

Workspace POJO: Parameterize Tests using TestNG Data Provider Preview 05:55

Quiz

Assignment - Create POJO and serialize this JSON

Hands-on activity to test your learnings so far

Not Null Preview 02:47

Non Default Preview 02:41

Non Empty Preview 02:58

JSON Ignore and JSON Ignore Properties Preview 04:34

API Walkthrough Preview 04:06

Create POJOs Preview 11:21

Build Payload and Serialize Preview 11:36

De-serialize and Assert Full Body [JSON Assert] Preview 14:36

Challenges Preview 03:39

Handle Different Data Types in Request and Response Preview 17:55

Assert Field with Different Data Types Preview 09:26

Automate One More Test Case Preview 05:08

Fetch all nested keys and values from a given JSON array

This is an interesting problem to solve. Must do activity.

Fetch values of fields with same key name

An interesting problem to solve with the amazing Groovy's GPath expression.

Authentication Vs Authorization Preview 02:30

Different Authentication Schemes Preview 01:35

Basic Authentication Preview 04:14

Digest Authentication Preview 02:08

Bearer Authentication Preview 02:48

API Key Authentication Preview 03:26

What is OAuth? Preview 08:49

What is OpenID Connect? Preview 04:52

Quiz

OAuth Terminologies Preview 03:41

Authorization Code Grant Flow Preview 07:29

Implicit Grant Flow Preview 04:39

Client Credentials Flow Preview 05:42

Quiz

Introduction Preview 04:33

Create Gmail Account Preview 01:05

Create Client App Preview 01:19

Enable Gmail API Preview 01:06

Create Consent Screen Preview 04:55

Create Client Credentials Preview 02:57

Authorize App Preview 11:39

Fetch Access Token and Refresh Token Preview 05:04

Renew Access Token Preview 03:05

Execute Get User Profile API Preview 03:51

Execute Send Email API Preview 04:52

Quiz

Implicit Grant Flow Preview 06:35

OpenID Connect - ID Token [JWT Token] Preview 12:05

Assignment - Let's learn more about the JWT Token

This is an important assignment.

Get Profile API Preview 06:34

Send Email API Preview 06:34

Assignment - Automate Gmail APIs: Delete/Get/List/Modify

Automate Gmail APIs further as a good hands-on activity

What is Session Based Authentication? Preview 05:46

What is Form Based Authentication? Preview 06:37

What is CSRF Token? Preview 04:05

Setup Demo App Preview 05:38

Demo App Walkthrough Preview 06:22

Automate Post Preview 05:49

Fetch Session ID using Session Filter Preview 03:20

Automate Get Profile Preview 06:34

HTML Validation Preview 04:59

Quiz

What is a Cookie? Preview 08:40

Demo Application Cookie Flow Preview 02:24

Sending Cookie Preview 03:32

Sending Cookie using Cookie Builder Preview 02:11

Sending Multiple Cookies Preview 01:52

Fetch Single Cookie Preview 03:07

Fetch Multiple Cookies Preview 06:09

Quiz

Introduction Preview 03:39

Authorization API Intro Preview 05:31

Register a Client App Preview 01:45

Authorize App Preview 05:22

Fetch Access Token and Refresh Token Preview 04:56

Renew Access Token Preview 03:27

Execute Create a Playlist API Preview 04:02

Execute Get a Playlist API Preview 01:49

Execute Update a Playlist API Preview 02:24

Automate Create a Playlist API Preview 10:00

Automate Get a Playlist API Preview 02:36

Automate Update a Playlist API Preview 04:50

Automate Negative Scenarios Preview 05:21

Why Refactoring? Preview 02:38

Create POJO Classes Preview 05:38

Update Test Cases to use POJOs Preview 10:56

Builder Pattern with POJOs Preview 02:44

Create Spec Builder Preview 04:21

Create Playlist API Reusable Methods Preview 16:03

Create Rest Assured Reusable Methods Preview 06:52

Renew Token Automatically Preview 08:09

Check Token Expiry Preview 11:02

Create Reusable Method Preview 02:07

Create Reusable Spec Preview 02:03

Create Property Loader Utility Preview 04:06

Create Config Loader - Singleton Design Pattern Preview 11:01

Create Data Loader Preview 04:23

Introduction Preview 03:02

Setup Preview 03:59

Implement without Builder Preview 07:13

Implement with Builder Preview 06:47

Introduction Preview 02:47

Install Preview 04:22

Add Dependency Preview 04:10

Generate Reports Preview 03:30

Add Display Name Preview 02:24

Add Description Preview 01:08

Add Links Preview 04:09

Add Behaviors Preview 02:46

Add Steps Preview 04:14

Add Filter Preview 05:13

Custom Folder Path Preview 02:18

Use OAuth method to supply token Preview 02:10

Java Faker API Preview 08:44

Java Enum to store Status Codes Preview 13:10

Enable Parallel Execution Preview 10:35

Enable for Multiple Environments Preview 06:30

Create GitHub Repository Preview 03:28

Git Clients - Various Options Preview 03:22

Commit Code to GitHub Repository Preview 08:53

How to Push Subsequent Changes? Preview 03:13

Install Jenkins on Windows Preview 05:46

Install Jenkins on Mac Preview 05:12

Create Automation Jenkins Job Preview 11:03

Jenkins Auto Trigger: SCM Polling Preview 07:25

Jenkins Auto Trigger: Build Frequency Preview 03:10

Jenkins Auto Trigger: GitHub Web Hooks Preview 10:58

Bonus Lecture - What to learn next? Preview 01:03