Cademy logoCademy Marketplace

Course Images

REST API Automation Testing from Scratch - REST Assured Java

REST API Automation Testing from Scratch - REST Assured Java

🔥 Limited Time Offer 🔥

Get a 10% discount on your first order when you use this promo code at checkout: MAY24BAN3X

  • 30 Day Money Back Guarantee
  • Completion Certificate
  • 24/7 Technical Support

Highlights

  • On-Demand course

  • 24 hours 5 minutes

  • All levels

Description

This course has been updated with OAuth 2.0 Google Authentication real-time examples. 70% of the IT industry is now heading toward this API for automating services. Learn everything you need to know about REST API automation, even if you've never worked before on this domain.

Explore the world of REST API with this hands-on course. You'll not only learn the concepts from scratch but also find out how giant companies such as Jira, Twitter, Facebook, and Google Maps are using REST API to automate their services. The course starts with the basics of REST API and proceeds toward brushing up your Java skills. Next, you'll become familiar with the concept of Postman and test APIs with Postman. As you advance, you'll discover different types of REST requests and set up the REST assured environment for automation. Next, you'll optimize scripts to match framework standards and closely study the grant type authorization flow with an interesting example. Moving ahead, you'll solve complex queries from JSON with simple POJO methods and learn to automate APIs with the help of many examples. Toward the end, you'll migrate a project to the TestNG framework and understand the importance of Maven in framework development. By the end of this course, you'll have complete knowledge of REST API automation testing. The code bundle for this course is available at https://github.com/packtpublishing/rest-api-automation-testing-from-scratch--rest-assured-java

What You Will Learn

Understand the REST API architecture
Perform API testing with Postman
Handle Google and Facebook OAuth 2.0 authorization grant types
Create Maven project and import into Eclipse
Study serialization and deserialization for JSON inputs and outputs
Create BAT file to run the whole project with a single click

Audience

This course is perfect for manual testers and software engineers who are looking to learn automation testing. Even if you don't have any programming background or experience in API testing, you can get started with this course. Every topic in this course is taught from scratch.

Approach

The course is designed systematically, picking real-world scenarios based on what industry follows to test REST APIs. You'll start from the basics and gradually progress toward advanced topics, and by the end of this course, you will develop REST API automation skills and will be able to implement them successfully in your workplace.

Key Features

Get a solid understanding of REST API automation using REST assured with real-time examples * Design and implement structured API automation frameworks with REST assured API * Become familiar with REST manual testing tool-Postman

Github Repo

https://github.com/packtpublishing/rest-api-automation-testing-from-scratch--rest-assured-java

About the Author

Rahul Shetty

Rahul Shetty is the founder and trainer at Rahul Shetty Academy. He is a passionate software tester and has 13 years of rich experience in the IT industry. He has completed more than 300 offline training batches. Rahul has extensive knowledge in web automation testing, mobile automation testing, and API automation testing. He has also worked with various CMM-level organizations and managed the set-up of QA processes for projects.

Course Outline

1. REST API Basics and Terminology

1. Introduction to REST API

This video presents an introduction to REST API.

2. Introduction to REST API and Where it is Used in Project Architecture

The video focuses on the introduction to REST API and where it is used in project architecture.

3. Understanding GET, POST, PUT DELETE, HTTP, and CRUD Operations of API

This video explains the GET, POST, PUT DELETE, HTTP, and CRUD operations of API.

4. Path, Query Parameters, and Headers in REST API

This video focuses on path, query parameters, and headers in REST API.


2. Getting Started with REST API Testing

1. Introduction to Postman and Google Maps APIs

This video presents an introduction to Postman and Google Maps APIs.

2. Understanding the Add Place API and Executing it Through Postman

This video focuses on the Add Place API and explains how to execute it through Postman.

3. Understanding the Get and Delete Place API Using GET and DELETE HTTP Methods Through Postman

This video explains the GET and DELETE Place API using the GET and DELETE HTTP methods through Postman.

4. Understanding the Update Place API Using the PUT HTTP Method Through Postman

This video explains the Update Place API using the PUT HTTP method through Postman.


3. REST Assured Setup for API Automation Testing

1. Setting Up Rest Assured Maven Project with Java and Eclipse Installation

This video explains how to set up REST Assured Maven project with Java and Eclipse installation.

2. Building a REST API Automation Testing Framework to Add Places and Validate Status Codes

This video explains how to build a REST API automation testing framework to add places and validate status codes.


4. Validating the REST API Responses

1. Assertions on JSON Response Body and Headers Through Automated Code

This video explains assertions on the JSON response body and headers through automated code.

2. Parsing the JSON Response Body Using JSON Path Class

This video explains how to parse the JSON response body using the JSON path class.

3. Integrating Multiple APIs with the Common JSON Response Values

This video explains how to integrate multiple APIs with the common JSON response values.

4. Building End-to-End Automation Using GET, POST, and PUT HTTP Methods

This video demonstrates how to build end-to-end automation using the GET, POST, and PUT HTTP methods.

5. Importance of Junit/TestNG Assertions in Validating the Responses

This video explains the importance of Junit/TestNG assertions in validating the responses.


5. Diving in Depth Automating REST API

1. Understanding the Structure of Complex Nested JSON and its Array Notations

This video explains the structure of complex nested JSON and its array notations.

2. Retrieving the JSON Array Size and its Elements Using the JSON Path

This video explains how to retrieve the JSON array size and its elements using the JSON path.

3. Iterating Over Every Element of the JSON Array and Accessing Elements in It

This video explains how to iterate over every element of the JSON array and how to access its elements.

4. Retrieving JSON Nodes on Condition Logic Using the JSON Path

This video demonstrates how to retrieve the JSON nodes on condition logic using the JSON Path.

5. Real-Time Example to Solve Business Logic Using the JSON Response

This video presents real-time examples to solve business logic using the JSON response.


6. Handling Dynamic JSON Payloads with Parameterization

1. Why Dynamic JSON Payloads are Important to Understand

This video explains the importance of the dynamic JSON payloads.

2. Introduction to Library API

This video presents an introduction to Library API.

3. Testing REST Assured for Library API Using the Add Book HTTP Method

This video focuses on testing REST Assured for the Library API using the Add Book HTTP method.

4. Sending Parameters to Payload Through Test

This video explains how testing enables you to send parameters to the payload.

5. Understanding TestNG Data Provider for Parameterization

This video focuses on the TestNG data provider for parameterization.

6. Example on Parameterization of API Tests with Multiple Datasets

This video presents an example on parameterization of API tests with multiple datasets.

7. How to Handle with Static JSON Payloads

This video explains how to handle with static JSON payloads.


7. Real-World Example Automating Jira APIs

1. How Jira API Works

This video demonstrates how Jira API works.

2. Cookie Authentication API for Jira Requests

This video explains the cookie authentication API for Jira requests.

3. GET and POST APIs in Jira to Create Bugs

This video explains the GET and POST APIs in Jira that are used to create bugs.

4. Defining Path Parameters in REST Assured Code Using Add Comment API

This video explains how to define path parameters in the REST Assured code using the Add Comment API.

5. Importance of the Session Filter Cookie in REST Assured Code

This video explains the importance of the Session Filter cookie in the REST Assured code.

6. Sending Attachments to REST API Using the MultiPart Method in REST Assured

This video demonstrates how to send attachments to REST API using the MultiPart method in REST Assured.

7. Integrating Query Params and Path Params in a Single Test to Restrict the Results

This video explains how to integrate query params and path params in a single test to restrict the results.

8. Parsing a Complex Jira JSON Response to Retrieve the Added Comment with Code Logic

This video explains how to parse a complex Jira JSON response to retrieve the added comment with code logic.

9. Importance of Assertions and HTTP Validations on REST API

This video explains the importance of assertions and HTTP validations on REST API.


8. Handling Google and Facebook OAuth 2.0 Authorization Grant Types

1. Introduction to OAuth 2.0 and Different Grant Types

This video presents an introduction to OAuth 2.0 and the different grant types.

2. Understanding the Grant Type Authorization Flow with Real-Time Example

This video presents a real-time example focusing on grant type authorization.

3. Flow Procedure in Achieving OAuth 2.0 Authentication Mechanism

This video explains the flow procedure in achieving the OAuth 2.0 authentication mechanism.

4. Practicing the OAuth 2.0 Project to Retrieve the Courses List

This video presents the details on practicing the OAuth 2.0 project to retrieve the courses list.


9. REST Assured Automation for OAuth 2.0 Authorization Code

1. Performing REST Assured Automation Testing for the OAuth Project

This video explains how to perform REST Assured automation testing for the OAuth project.

2. Integrating Web UI Automation to Generate an Authorization Code

This video explains how to integrate Web UI automation to generate an authorization code.

3. Formatting a URL String to Retrieve Codes Using Java Methods

This video demonstrates how to format a URL string to retrieve codes using Java methods.

4. How to Deal with the Client Credentials Grant Type for OAuth Flow

This video explains how to deal with the client credentials grant type for OAuth flow.


10. Deserialization Using POJO Classes with REST Assured

1. What is Serialization and Deserialization in REST Assured?

The video explains the concept of serialization and deserialization in REST Assured.

2. Libraries Needed to Support Serialization in REST Assured

This video focuses on the libraries needed to support serialization in REST Assured.

3. Strategies in Parsing Complex Nested JSON using POJO Classes

This video focuses on the strategies used in parsing complex nested JSON using POJO classes.

4. Creating POJO Classes for the Real-Time Nested Array in JSON

This video explains how to create POJO classes for the real-time nested array in JSON.

5. End-to-End Automation Examples using POJO Deserialization

This video presents end-to-end automation examples using POJO deserialization.

6. Solving Complex Queries from JSON Using Simple POJO Methods -Part 1

This video is the first part of the two-part video that demonstrates how to solve complex queries from JSON using simple POJO methods.

7. Solving Complex Queries from JSON Using Simple POJO Methods-Part 2

This video is the second part of the two-part video that explains how to solve complex queries from JSON using simple POJO methods.


11. Serialization of the Input Payload Using Google Maps API Example

1. Google Maps Add Place JSON to Implement Serialization

This video focuses on the Google Maps Add Place JSON to implement serialization.

2. Building POJO Classes to Construct JSON Payload to API

This video demonstrates how to build POJO classes to construct JSON Payload to API.

3. End-to-End Testing with Serialization

This video explains how to implement serialization to perform end-to-end testing.


12. Understanding Request and Response Spec Builders in REST Assured

1. Significance of Spec Builders in REST Assured

This video explains the significance of spec builders in REST Assured.

2. Practical Example of Implementing Spec Builders and Optimizing Code

This video presents a practical example of implementing spec builders and optimizing code.


13. Maven and Cucumber Basics

1. Importance of Maven in Framework Development

This video explains the importance of Maven in framework development.

2. Installing and Configuring Maven

This video demonstrates how to install and configure Maven.

3. Understanding Terminologies of Maven

This video explains the various terminologies of Maven.

4. Creating a Maven Project and Importing into Eclipse

This video demonstrates how to create a Maven project and import it into Eclipse.

5. Introduction to Cucumber

This video presents an introduction to Cucumber.

6. What is Gherkin Syntax and How it Works

This video focuses on the Gherkin syntax and how it works.

7. Understanding the Scenarios Outline in Cucumber

This video explains the purpose of the scenario outline in Cucumber.

8. Feature Files and Importance of Step Definition in Cucumber

This video explains the feature files and importance of step definition in Cucumber.

9. Creating a Project Template in Cucumber

This video explains how to create a project template in Cucumber.

10. Understanding Cucumber Dependencies

This video focuses on Cucumber dependencies.

11. Understanding the Terminologies of Automation

This video explains the various terminologies of automation.

12. Mapping Step Definition to a Feature File

This video explains how to map step definition to a feature file.

13. Using Tidy Gherkin Plugin to Generate Step Definitions

This video explains how to use the Tidy Gherkin plugin to generate step definitions.

14. Running the Tests with testRunner

This video explains how to run tests with testRunner.

15. Importance of Regular Expressions in Feature Files

This video explains the importance of regular expressions in feature files.

16. Reusing Functions with Different Data

This video demonstrates how to reuse functions with different data.


14. Cucumber BDD API Framework Development from Scratch - 1

1. Learning Plan

In this video, we'll discuss the learning plan for Cucumber BDD API framework development.

2. Creating a Maven Project with Cucumber REST Assured Dependencies

This video explains how to create a Maven project with Cucumber REST Assured dependencies.

3. Building a Cucumber Feature File for REST Assured API Tests

This video explains how to build a Cucumber feature file for REST Assured API tests.

4. Building Test Runner and Step Definition Files to Test the Add Place API Feature

This video demonstrates how to build the test runner and step definition files to test the Add Place API feature.

5. Implementing Real Code in Step Definition Files with Reusable Components

This video explains how to implement a real code in step definition files with reusable components.

6. Running the Test in Cucumber Standards with Necessary Configuration Changes

This video demonstrates how to run a test in Cucumber standards with necessary configuration changes.

7. Building Utility Files and Implement a Logging Feature in the framework

This video explains how to build utility files and implement a logging feature in the framework.

8. Implementing Mechanisms to Drive Global Property Values from the Properties File

This video explains how to implement mechanisms to drive global property values from the properties file.

9. Data-Driven Testing Mechanism for API Tests using the Cucumber Example Feature

This video explains data-driven testing mechanism for API tests using the Cucumber example feature.

10. Parameterizing API Test with Multiple Data Sets using Cucumber Framework Features

This video demonstrates how to parameterize API Test with multiple data sets using the Cucumber framework features.

11. What are Enum Classes? How the Framework can Utilize the Enum Concepts?

The video explains Enum classes and how the framework can use the Enum concepts.

12. Removing Hardcoded Resource Details with Enum Class Methods

This video demonstrates how to remove hardcoded resource details with Enum class methods.

13. Building End-to-End Test Case with the Add and Delete Place in Framework Standards - Part 1

This video is the first part of the two-part of the video that explains how to build end-to-end test case using the Add and Delete Place APIs in framework standards.

14. Building End-to-End Test Case in Framework Standards - Part 2

This video is the second part of the two-part video that presents more details on how to build end-to-end test case in framework standards.

15. Creating Additional Scenarios in Framework to Reuse Existing Step Definitions

This video explains how to create additional scenarios in the framework to reuse existing step definitions.

16. Importance of Cucumber Hooks in Setting up Preconditions for API Tests

This video explains the importance of Cucumber Hooks in setting up preconditions for API tests.

17. Optimizing the Framework Tests with All Necessary Validations

This video explains how to optimize the framework tests with all necessary validations.

18. Running the Complete Framework Using Maven Commands

This video demonstrates how to run the complete framework using Maven commands.

19. Generating Excellent Cucumber HTML Reporting with Additional Plugins

This video explains how to generate excellent Cucumber HTML reporting with additional plugins.


15. Cucumber BDD API Framework Development from Scratch - 2

1. Introduction to Jenkins CI Tool

This video presents an introduction to the Jenkins CI tool.

2. Integrating the API Framework into Jenkins and Triggering with the New Job Setup

This video explains how to integrate the API framework into Jenkins and trigger the new job setup.

3. Setting Up the Parameterized Jenkin Job for the API Framework with Multiple Tags

This video explains how to set up the parameterized Jenkin Job for the API framework with multiple tags.


16. Understanding the Git Version Control System

1. Introduction to Git

This video presents an introduction to Git.

2. Importance of GitHub and its Uses

This video explains the importance of GitHub and its uses.

3. Creating Git Config and Repositories

This video demonstrates how to create Git config and repositories.

4. How to Push Code to a Remote Repository

This video explains how to push code to a remote repository.

5. Understanding Staging and Commit in Git

This video focuses on staging and commit in Git.

6. Adding a Remote Repository and Pushing the Committed Code

This video demonstrates how to add a remote repository and push the committed code.

7. End-to-End Working Example on Git Commands - Part 1

This video is the first part of the two-part video that explains end-to-end working example on Git commands.

8. End-to-End Working Example on Git Commands - Part 2

This video is the second part of the two-part video that presents more end-to-end working examples on Git commands.

9. Importance of Branching in Git

This video explains the importance of branching in Git.

10. Resolving Merge Conflicts with Git

This video explains how to resolve merge conflicts with Git.


17. Excel Integration with REST Assured Test

1. Apache POI API and Downloading Instructions

This video focuses on Apache POI API and explains how to download instructions.

2. Strategy to Access Excel Data

This video explains the strategy to access Excel data.

3. Getting Rows and Cells from an Excel Sheet

This video demonstrates how to access rows and cells from an Excel sheet.

4. Retrieving Data from Excel Based on a Condition

This video explains how to retrieve data from Excel based on a condition.

5. Practice Exercise - Excel Driven Testing - Part 1

This video is the first part of the three-part video that presents a practice exercise on Excel driven testing.

6. Practice Exercise- Excel Driven Testing - Part 2

This video is the second part of the three-part video that presents another practice exercise on Excel driven testing.

7. Practice Exercise- Excel Driven Testing - Part 3

This video is the third part of the three-part video that presents more practice exercises on Excel driven testing.

8. Introduction to Library API

This video presents an introduction to Library API.

9. Library API Postman and REST Assured Examples

This video presents examples on Library API Postman and REST Assured.

10. Converting HashMap into JSON

This video demonstrates how to convert HashMap into JSON.

11. Testing Excel Integration with REST Assured

This video explains how to test the integration of Excel with REST Assured.


18. Java Basics

1. Java Program Principles

This video explains the Java program principles.

2. Classes and Objects in Java

This video explains classes and objects in Java.

3. Strings in Java

This video explains strings in Java.

4. String Practice Exercises

This video presents a practice exercise on strings.

5. What is an interface?

This video focuses on the concept of an interface.

6. How Java Classes can Take Advantage of the Interface

This video explains how Java classes can take advantage of the interface.

7. Using Inheritance in JAVA

The video demonstrates the use of inheritance in Java.

8. Practical Examples on Types of Inheritance

This video presents practical examples on the types of inheritances.

9. Introduction to Arrays

This video presents an introduction to arrays.

10. Single-Dimensional and Multidimensional Arrays Usage

This video explains the use of single-dimensional and multidimensional arrays.

Course Content

  1. REST API Automation Testing from Scratch - REST Assured Java

About The Provider

Packt
Packt
Birmingham
Founded in 2004 in Birmingham, UK, Packt’s mission is to help the world put software to work in new ways, through the delivery of effective learning and i...
Read more about Packt

Tags

Reviews