You are on page 1of 13

Postman API

Testing
(Manual and Automation Testing)

Training Curriculum

Course Content:
Module 1: Introduction
• Overview
• First steps in Postman
• The postman Landscape
• Introduction to web application architecture
• Introduction to APIs
• Introduction to Web-Services
• How does an API works
• What is API testing?
• What does API Testing involve
• Validation techniques used in API Testing
• API Testing Steps
• Understanding URI, End points, Resources, Http verbs
• GUI tools available for API Testing
• Command-line tools available for API Testing
• Best Practices for API Testing
• Advantages of API
• API vs Web-Services
• Introduction to API architecture, REST API, SOAP API
• Understanding how REST API architecture works
• Understanding how SOAP API architecture works
• Understanding the HTTP methods GET, POST, PUT, DELETE, PATCH, OPTIONS, HEAD,
and Few more

Module 2: Creating with API Requests


• How to create a request in Postman?
• How to import a request from your browser in Postman?
• How to inspect HTTP responses in Postman?
• Handling cookies in Postman
• Troubleshooting Postman issues
• Saving requests to a collection in Postman
• Creating First API request using Postman
• Functional Testing of Web Services
• Understanding History
• Setting up Test Project with REST APIs
• Validating responses with Postman client
• Validating the body of the first JSON response
• Examples of validating response headers and status codes
• Understanding query parameters on sending request
• Validating status code
• Validating Response time
• How to debug & troubleshoot
• How to create and manage Workspaces
• Importing request from your browser
• Cookies
• Saving Responses
• Creating collections in Postman tool
• Importing/Exporting collections using Postman tool
• Run Collections Remotely with URL
• Creating variables at difference scope levels and how to refer them
• How to set and get variables through scripting
• Creating Environments
• How to setup different URLs using environments
• How to create quick scripts
• Pre-request scripts
• Test scripts/Assertions
• Make the requests dynamic by taking advantage of variables
• Generating code snippets in Postman tool

Module 3: Writing Tests and Scripts


• Introduction
• Your first API test in Postman
• Testing an API
• Path parameters vs query parameters
• Refactoring tests
Module 4: Writing Tests and Scripts using Variables
• Variables in Postman
• Global variables
• Environments
• Session variables (new in Postman 6.2!)
• Bulk editing removed (new in Postman 6.2!)
• Pre-request scripts in Postman
• Understanding different variable scopes / types
• How to setup different URLs using environments in Postman?
• Debugging tests

Module 5: Advanced Assertions


• Section overview
• Postman assertion basics
• Assertions
• Chai Assertion Library
• Assertions on arrays
• Assertions on nested objects

Module 6: Advance Topics


• Overview

• Runner

• Postman monitors

• Automating with Newman tool

• Basic introduction to NPM tool & NodeJS

• Installing NodeJS

• Installing Newman tool

• Running a collection with Newman tool

• Specifying environments in Newman tool

• Creating an HTML report using Newman tool

• Using Authentication/Authorization in Postman tool

• Introducing delays for scheduled or continuous load API testing


Module 7: Advance Topics Part II

• Automating POST request with payload


• Grabbing the response body into the string for advance validations
• Data-Driven testing using CSV and JSON
• Scheduling the API testing periodically
• Load testing of API testing in Postman tool
• Running and analyzing Load Test results

`
1. Introduction - SoapUI WebServices Testing Tool
• What is Webservice
• Why Webservice
• Significance of Webservice
• WebServices Description Language
• Webservice Architecture
• Xml Messaging
• Overview on Soap Protocol

2. Exploring WSDL
• WSDL Introduction
• WSDL Elements
• WSDL Definition
• WSDL Types
• WSDL Message
• WSDL Port type
• WSDL Binding
• WSDL Ports
• WSDL Service

3. Soap Messaging
• Simple Access Object Protocol
• Soap Messages
• Soap Envelope
• Soap Header
• Soap Body
• Soap Fault
• Soap Encoding
• Soap Transport
• Soap Standards

4. Started with Soap UI


• Creating the Project
• Adding WSDL
• Project Operations
• Request Pane &Response Pane
• Invoking and getting results
• Creation of Test Suites
• Creation of Test Case
• Running testcases from project level
• TestSteps explanation
• Cloning the TestCase/suite
• Brief explanation of the local Webservice
• Reading SoapUI Logs, Error Logs, Memory Logs and Other Logs

5. Assertions
• Why Assertions
• Types of Assertions
• Soap UI pro Assertions
• AssertionXpath,XQuery Match Assertion
• Point and click xpathAssertion with Soap Ui pro
• Writing own xpath
• Assert dropdown
• Count,exist Xpath Asertions
• Message Content Assertion
• Contains Assertion
• SLA Assertion
• Not Contains Assertion
• Soap Faults Assertions
• Security Assertions
• HTTP Status Codes
• Compliance, status and standards
• Challenges/drawbacks of SoapUI open source in Assertions
• Properties
• Properties Usage with SoapUI Features
• Property Levels
• Defining properties
• Project Level Properties
• Test Suite level Properties
• Test Case Level Properties
• Accessing properties from different levels
• Writing own step for Accessing Properties
• Accessing Properties from External file
• Properties Transfer step
• Usage of Properties Transfer step
• Examples using above methods
• Moving the test steps across each other
• Properties Step
• End to end Example using properties from all levels

6. Groovy Scripting
• What is Groovy Scripting?
• Similar to JVM
• Printing logs
• Defining Variable
• Operators
• Loosely Coupled Data types
• if else Simulator
• For loop
• Exceptions
• SetProperty Method
• GetProperty Method
• Accessing properties from Context
• Accessing request and response from Context variable
• Xml Holder
• Accessing nodevalues with Xml Holder
• Exercises on above functionalities
• Parsing Xml With XmlHolder
• Groovy Utils Xml Holder|
• SetNodeValue property
• getXml Method
• Update the XML
• TestRunner
• Scope of testRunner
• Traverse to Project level using TestRunner
• Traverse to Test Suite level using TestRunner
• Accessing the project level properties from TestRunner

7. Restful Webservices
• Introduction to Rest
• Overview of Rest Architecure
• Rest Advantages
• Difference between SoapProtocol/Rest
• Http Methods Get,Post
• Crud Operations
• Rest Services Exposed by Google/Twitter
• Rest Resources
• Multiple Representations
• Rest methods/Requests

8. Testing Databases with SoapUI


• Testing data in isolation
• Setting up SoapUI to connect to the database
• JDBC Request TestStep
• JDBC Request properties
• JDBC test assertions
• Stored procedures with JDBC Request TestStep
• Accessing SoapUI properties from SQL query

SoapUI Archicture and Process Flow

Protocols Supported By SoapUI


REST ASSURED API
AUTOMATION Curriculum
Rest Assured Setup for API Automation Testing
1.Introduction on Test API's
2. Setting up Test Project with RestAssured API's
3. Build Rest API Automation Test to Add Place and validate Status codes

Validating the Rest API Responses

1.Assertions on Json Response Body and Headers through Automated code


2.Parsing the Json Response body using JsonPath class
3.Integrating the Multiple API's with common Json response values
4.Building End to End Automation using GET, POST and PUT Http Methods
5.Importance of Junit/TestNG Assertions in validating the responses

Diving in Depth-Automating Rest API’s

1.Understanding Structure of Complex Nested Json and its array notations


2.Json used in this Section with Queries to solve
3.Retrieving the Json Array Size and its elements using JsonPath
4.Iterating over every element of Json Array and accessing elements in it
5.Retrieving Json Nodes on Condition logic using JsonPath
6.Real Time example to solve Business logic through Json response

Handling Dynamic JSON Payloads with Parameterization

1.Why Dynamic Json payloads are important to understand


2.Introduction to Library API
3.Rest Assured Test for Library API Add Book http method
4.Sending parameters to payload from Test
5.Understanding TestNg Data provider for parameterization
6.Example on Parameterization of API Tests with multiple data sets
7.How to handle with static json payloads

Rest Assured Automation for OAuth 2.0 Authoization code

1.Building up Rest Assured Automation Test for the OAuth Project


2.Integration Web UI Automation to generate Authorization code
3.Formatting URL String to retrieve code using java methods
4.How to deal with Client Credentials Grant type for OAuth flow

Cucumber BDD API Framework Development from Scratch-1


• Creating Maven project with Cucumber Rest Assured Dependencies
• Building Cucumber Feature file for Rest Assured API Tests
• Building Test Runner and Step Definition files for Add Place API Feature Test
• Implementing Real code in Step Definition files with reusable components
• Running the Test in Cucumber Standards with necessary Configuration changes
• Building Utility Files and Implement Logging feature in Framework
• Implement Mechanism to drive Global property values from Properties file
• Data Driven Testing Mechanism for API Tests using Cucumber example feature
• Parameterize API Test with multiple Data sets using Cucumber Framework features
• What are Enum classes? How Framework can utilize the Enum concepts
• Removing Hardcoded resource details with Enum class Methods
• Build End to End Testcase with Add and Delete Place in Fraework Standards
• Build End to End Testcase in Framework Standards
• Creating Additional Scenarios in Framework to reuse existing Step Definitions
• Importance of Cucumber Hooks in setting up Preconditions for API Tests
• Optimizing the Framework Tests with all necessary validations -
• Running the Complete Framework using Maven commands
• Generate Excellent Cucumber HTML reporting with additional Plugins

You might also like