Design and Build API Automation Framework from Scratch, using Bottom Up Approach
Hi There,
What you’ll learn
- Create API Automation Framework from Scractch.
- Bottom Up Approach for Automation Framework Design.
- Java + RESTAssured + TestNG + ReportPortal.
- Automate HTTP Methods : Post, Put, Get, Delete.
Course Content
- Course Introduction –> 2 lectures • 8min.
- Project Setup –> 1 lecture • 11min.
- HTTP Methods –> 5 lectures • 39min.
- Create Service Layer –> 3 lectures • 17min.
- Create Model Layer –> 3 lectures • 16min.
- Create Helper Layer –> 6 lectures • 32min.
- Create Test Layer –> 3 lectures • 25min.
- Create Data Layer –> 3 lectures • 24min.
- Create Validation Layer –> 4 lectures • 42min.
- Create Runner Layer –> 3 lectures • 17min.
- Add Report Layer –> 4 lectures • 27min.
- Wrap Up Course –> 1 lecture • 3min.

Requirements
Hi There,
In the course, I have first covered, how to automate HTTP Methods(Post, Put, Get and Delete) using plain Java code. Then I have covered framework building by following layered approach, building the framework from bottom up.
I approach API Automation Framework Design using Bottom Up Layered Approach with following layers :
- Service Layer – Implement the HTTP Method Calls
- Model Layer – Define Request and Response Model Classes
- Helper Layer – Create Request Object and Call Service Layer Method Call
- Test Layer – Implement Test Cases and Use Helper Layer to Call APIs
- Data Layer – Provide Data to Tests using Data Providers
- Validation Layer – Implement Response Validation Methods for API
- Runner Layer – Enable Test Runs via CLI Commands, and thus via CI/CD Tools
- Environment Layer – Enable Tests to Run on Multiple Environments
- Report Layer – Add Reporting and Logging for Test Runs
The layered approach helps the framework to be easy and quick to scale and maintain. This design approach can be applied to either Java or Python tech stack.
In this course I have used Java + Maven + RESTAssured + TestNG + ReportPortal.
If you follow the course, you can apply the design approach using Python + Pip + Request + PyTest + ReportPortal as well.
Anyways I will come up with the course using Python + Pip + Request + PyTest + ReportPortal in future.