
Explore step-by-step rest API testing with Python, pytest, and Allure, covering JSON parsing, end-to-end setup, testing, reporting, data-driven and Robot Framework, Git, and Jenkins integration.
Web services enable machine-to-machine communication over the web, accessed by programming rather than end users, unlike web-based applications that provide a user interface for end users.
Explore how web services operate as server-deployed applications accessed via programming interfaces, illustrated by Makemytrip and Trivago, where the client calls airline and hotel APIs and servers aggregate results.
Web services are platform and language independent, enabling easy integration via XML or JSON. A single web service can be accessed by web, mobile, and other devices across platforms.
Distinguish api from web service by network needs and formats like jar, dll, http json, xml, rest, soap, xml-rpc; web services are api, but not all apis are web services.
Explore the fundamentals of microservices, contrast with monolithic architecture, and learn how independent module deployments and REST API testing enable scalable, resilient applications.
Follow a four-step installation roadmap to set up Python, PyCharm community edition, pip, and the request library for rest api testing.
Install Python on a Windows 64-bit machine by downloading the latest version, installing it, setting environment variables, and verifying with Python -V for rest API testing prep.
Download and install PyCharm community edition, the editor for Python. Create a project named automation one, select the interpreter, and apply the IntelliJ theme for easier work.
Configure and verify pip on Windows as Python's package installer, download and install packages, and set the environment variable path.
Install the request library with pip for rest api testing, including commands for install, uninstall, and updating with -U.
Create a Python project and file in PyCharm, write print statements and comments, learn indentation and case sensitivity, and run code from the integrated development environment or command prompt.
Take user input with input(), store it in variables, print results, while learning about backslash continuation, semicolon separated statements, and concatenation with spaces without explicit data types.
Learn how to define and use variables in Python. Cover multiple value assignments in a single line, and constants and typecasting.
Explore how Python handles variables, constants (as capitalized conventions) and the concept of typecasting, converting between string and integer with input, int() and str() functions.
Explore Python standard types like numeric, string, list, tuple, and dictionary, and see how input determines types, with notes on list versus tuple and dictionary keys.
Teach conditional logic in Python, from a single if to if else and if elif else, using input and integer casting to check even numbers.
Master two-condition handling in Python by using if-else to branch on even or odd numbers, including input conversion, modulus checks, and proper string concatenation with indentation.
Explore handling multiple conditions in Python with if, elif, and else, including negative, zero, and positive cases, typecasting input to integer to check even or odd.
Explore nested conditions in Python, using if else and inside else blocks to handle multiple outcomes such as negative, positive, even, and odd numbers.
Master logical or and logical and in Python with practical examples of validating marks and classifying numbers as even or odd.
Master looping concepts for automation and programming, including for and while loops, condition-driven execution, and iterating over lists, tuples, and dictionaries.
Learn how the Python for loop behaves when a final range is provided: it starts at zero, excludes the final value, and auto-increments by one as you print each index.
Learn how to use Python for loops with start and end range, print multiplication tables, and handle type casting between strings and integers for user input and formatted output.
Explore how to set a for loop increment in Python using range with start, end, and step, producing sequences like 1, 3, 5, 7, and 9.
Learn how to write a Python for loop in reverse using range with a decrement value and minus sign, starting at 10 and counting down to 1 with user input.
Create a basic list, loop over all its values with for, iterate characters in a string, and sum numbers to demonstrate for loop with a list in Python.
Learn to implement a while loop with an initial point, condition, and increment, using typecasting of user input to int to print 1 to 10 and a multiplication table.
Demonstrate a while loop with decrement, counting from ten to one and printing i as it decrements. Show user input, typecasting to int, and producing a reverse table with steps.
Use the Python break statement to exit a loop early when a condition is met, demonstrated with a for loop range and a multiplication table example.
Demonstrates how to use the continue statement to skip loop iterations, with a practical multiplication table that omits multiples of ten.
Explore the Python else statement and how it runs after a for loop completes in PyCharm, printing 1 to 10 and then 'Loop is ended'.
Learn to define strings in Python with double, single, and triple quotes, perform concatenation and repetition, and convert numbers to strings for testing and automation.
Explore string operations by fetching substrings with start and end indices in Python. Understand how end indices work and when index out of range errors occur.
Explore common string operations in Python, including finding length with len, converting to uppercase or lowercase, and capitalizing the first character, with practical examples for automation.
Explore removing spaces from strings with lstrip, rstrip, and strip in Python to compare actual vs expected results in automated checks, including left, right, and both-side trimming.
Learn advanced string operations in Python, including replace, find, and split, with practical examples of replacing substrings, finding data in strings, and splitting strings into words.
Learn how to compare strings in Python for automation, including case-sensitive and case-insensitive comparisons, using double equals, and normalization with strip, upper, or lower.
Explore defining lists in Python, holding multiple data types, and accessing items by index and range; determine length and iterate through items with for loops.
Demonstrates how to concatenate two lists using the plus operator, then performs list operations (update, insert, delete) by index, and explains how to compute length with practical Python examples.
Learn how tuples differ from lists in Python, using parentheses to store mixed data, index to fetch values, and how to measure length and concatenate, while noting read-only behavior.
Explore tuple advanced operations, such as counting values, displaying values, and merging tuples, while learning how to concatenate tables with the plus operator and assess read-only behavior.
Learn how to define a dictionary in Python, understand keys and values, and fetch data by key, while recognizing that keys must be unique.
Explore Python dictionaries: define, fetch, update, add items, and delete by key with pop, then get all keys or values, and learn when to use dictionaries versus lists or tuples.
Discover what Python functions are, why they boost code reusability and reduce duplication, and how to create and call them with def, a name, parentheses, and colon.
Define functions with the def keyword followed by a name and a colon, indent the body consistently. Use the first line for comments and the return keyword to end function.
Explore different types of functions, from no-argument, no-return helpers to parameterized ones, demonstrate argument passing, typecasting for concatenation, and introduce return values in future examples.
Explore return values in functions by building separate multiply and add functions with two arguments, showing when to return a result for reuse and when to print.
Learn the three types of Python function arguments: required, keyword, and default, and how to declare, call, and order them for robust testing scripts.
Learn to define a Python class using def, create objects, and call class methods with self, illustrating object oriented scripting concepts.
Explore how to define a Python class with methods, including no-argument, argument-only, and argument-and-return functions, using self, object creation, and method calls.
Explore constructors as a special type of method named __init__ that initializes objects in Python. Learn how they auto-run on object creation, accept arguments, and cannot return values.
Learn to create an object of a class in another Python file by importing the first file as a module, then instantiate with constructor arguments and call its methods.
Explore what a Python module is: a .py file with executable code, module functions, and classes, and learn how to use them in a project.
Learn how to use Python modules by importing them, and understand that executable code runs on import. Call module functions with moduleName.function, and use classes with constructors and methods.
Create a structured Python project for test automation, organizing code into library, test cases, utilities, and nested folders like pages/login with modules, classes, and methods.
Compare import and from import in Python, demonstrating importing whole modules versus specific classes, and how to instantiate objects and call their methods.
Explore Python file handling by opening files with the open method, selecting modes (read, write, append), and reading data using read, read line, or read(n) to extract specific content.
Read all characters from a file and display them one by one with a loop using obj.read, then read data line by line until end of file and print lines.
Learn how to write data to a text file using Python, including creating the file, writing data, and using append mode to add data without overwriting existing content.
Learn how to use the tell and seek methods to read from a file, track the cursor position, and reposition it to a chosen character in Python.
Explore what is an exception and how to handle it in Python, from runtime and logical errors to exception handling and upcoming try catch and finally techniques.
Learn Python exception handling with try, except and finally, including input validation and error messaging, through practical scenarios with and without exceptions.
Read and manage changeable test data from a configuration file to simplify updates across tests, including usernames, passwords, element locators, and URLs, using Python and cfg files.
Read data from a configuration file using the configparser module and the Configparser class by creating object, using read for the file path, and get with section and property name.
Master json basics, a javascript object notation lightweight data interchange format. Write json with key-value pairs, strings, numbers, arrays, and nested objects to model structured data for api testing.
Discover what json path is and how to navigate a json to fetch data at a specific position. Learn to write simple and complex json paths using jsonpath.com.
Master jsonpath advance options to navigate arrays and objects with indexing and dot notation, extracting city by index, address details, mobile, id, and language from complex json.
Learn to work with json in Python by converting a dictionary to a json string and parsing it back with json.loads in a PyCharm project.
Learn the core rest api methods, including get, post, put, delete, patch, head, options, and trace, and how to use them to fetch, create, update, or debug data.
Demonstrate how rest apis use parameters in the url with a get request to send data to a server, validate the status code, and understand the uri in the request.
Learn to send a get request to a REST API using Python, install and use the requests package, and display the response body and headers.
Validate status codes and response content in a rest API test using Python, pytest, and Allure by performing a get request, accessing response.status_code, and asserting it equals 200.
Fetch response header values from a get request, displaying all headers and specific fields like date and server, plus cookies, encoding, and elapsed time, with assertions against expected values.
Learn to fetch response content, parse it to json, and use json path to extract specific values like total_pages, then validate with an assertion.
Master advanced json path queries to fetch response content from rest api testing, using python loops to iterate over a data array and extract first names.
Learn how to perform a delete request in a rest api with python, building the url from base and id, and validating a 204 status code.
Create a new resource with a post request by sending a JSON body read from a file to the base URL, and handle the server response.
Demonstrate a post request to create a new resource, validate a 201 response, inspect headers and content length, parse the json response, and extract the id using json path.
Learn how to perform a put request to update a server resource by sending updated JSON to a URL with an ID and validating a 200 response, unlike post's 201.
Looking to Automate REST API Testing using Python ? Then you are on the right place.
This course will help you to understand API & Python programming from Scratch to Expert Level. It is specially designed by keeping Software Testing in mind so almost all already/libraries of API Testing using Python which are required in automation would be covered in his course.
Python in not just use for web browser automation but also can use for following
➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖
Read | Search & validate data in excel
Have to pull text off of several web pages?
Copy thousands of files from one location to another
Perform repeatable tasks in single click
Rename multiple files & folders within a second.
We are going to cover following well known HTTP methods are commonly used in REST based architecture.
GET - Provides a read only access to a resource.
PUT - Used to update a existing resource or create a new resource.
DELETE - Used to remove a resource.
POST - Used to create a new resource.
➖➖ BASICS OF API TESTING AND AUTOMATION ➖➖
Learn how to send REST Requests
What is API, Different Between SOAP and REST API
Different CRUD Operation and Its Implementation
GET | POST | PUT | DELETE
Basic understanding of MicroServices
Authentication approaches (BASIC,OAUTH)
How to Handle Header & Pre-requisite
➖➖➖➖ ADVANCE CONCEPTS ➖➖➖➖
How to Setup Environment for Python Scripting
Write basic Python Programming
Condition Handling, Looping
Working with Excel File (OpenPyXL)
How to Handle JSON file
Basic to advance JSON Path
How to Handle CSV file
JSON Parsing
PyTest Framework
Send different types of requests
Assert Response Data
Allure Reporting
Data Drive n Framework
Keyword Driven framework
Assertions
Request Channing
➖➖➖➖ REALTIME SCENARIO ➖➖➖➖
End to End Student Student Enrollment
Request Chaining
Final execution with report generation and analysis
Run API tests in Jenkins
Code Management using GIT
Scenario implementation on RealTime API Application
End to End Scenario building and once click execution
Collection Execution from command prompt