API and WebServices Automation Training – July 2018 Batch

Hi all,

Thanks for attending API & WebServices Automation Testing Training sessions. Please find the recorded sessions and other details of the sessions below:


Session 1: API & WebServices Basics – Part 1 (1 hour)

  • Course Overview
  • Understanding monolithic architecture
  • Understanding Microservices architecture
  • Importance of microservice architecture
  • Introduction to API
  • Q&A – Questions and answers


Session 2: API & WebServices Basics – Part 2 (1 hour)

  • API Versus Micro Services
  • Micro Services Versus Web Services
  • Web Services Versus Client Service Architecture
  • Client Server Architecture
  • Aim of Architectures
  • Types of Client Server Architectures


Session 3: API & WebServices Basics – Part 3 (1 hour 15 minutes)

  • Introduction to API
  • Types of API based on their origin
  • Types of API based on their accessibility
  • What is API Testing?
  • Why API Testing?
  • Points to keep in mind before starting API Testing


Session 4: API & WebServices Basics – Part 4 (1 hour)

  • Sample API Request demonstration in PostMan tool
  • Types of Tests that can be performed as part of API
  • And other practical demonstrations


Session 5: API & WebServices Basics – Part 5 (1 hour)

  • Best Practices of API Testing
  • Challenges of API Testing
  • API Testing versus Unit Testing
  • URI, URL, URN and End point


Session 6: URL Basics & Postman Tool (1 hour)

  • All about URL
  • URL Basics
  • Installing Postman Tool/li>
  • Creating sample requests in Postman Tool
  • Demonstrating different options in Postman Tool


Session 7: Request Methods & Postman Tool (1 hour)

  • Request Method – GET
  • Request Method – POST
  • Request Method – PUT
  • Request Method – DELETE
  • Request Method – PATCH
  • Demonstration of these methods in Postman Tool


Session 8: Headers, Query Parameters and Paylods (1 hour)

  • Types of Headers
  • Request Headers
  • Response Headers
  • Headers versus Query Parameters
  • Body Payloads
  • Demonstration of Headers and Payloads in Postman Tool


Session 9: Paylods – Part 2 (1 hour 15 minutes)

  • XML Payload
  • XML vs JSON Payloads
  • HTML Payload
  • Form Data asx Payload
  • Demonstration different Payloads in Postman Tool


Session 10: Test Questions to students understanding and Real time Example demonstration on Postman Tool (1 hour 30 minutes)

  • Test Questions to check your understanding so far
  • Demonstration of Facebook API
  • Importing the facebook API to Postman


Session 11: Real time Example demonstration – Part 2 and API Basics(1 hour 15 minutes)

  • Demonstration of Facebook API
  • Authentication versus Authorization


Session 12: API Basics – Authentication types and Response Codes(1 hour 15 minutes)

  • Types of Authentication
  • Different Response codes


Session 13: API Basics – Miscellenious Topics(1 hour)

  • URI Encoding
  • Cookies and Types
  • Web Services and its Components
  • Web Service roles


Session 14: API Basics – Miscellenious Topics(1 hour)

  • Types of Web Services
  • SOAP Web Services
  • REST Web Services
  • Demostration of SOAP and WebServices in Postman and SoapUI tools


Session 15: API Basics – Miscellenious Topics(1 hour)

  • Difference between SOAP and REST
  • Web Services Testing Challenges
  • RESTful versus RESTless
  • Web Servicing Testing Tools – SOAP UI, Postman, JMeter and Fiddler


Session 16: Postman – Part 1(1 hour)

  • Getting started with Postman tool
  • Postman tool – Download and installation
  • Postman tool – Updating
  • Postman – Installing native app
  • Postman – Creating account and signin
  • Postman – Installing native app
  • Postman – Features and uses


Session 17: Postman – Part 2(1 hour)

  • Collections – Share, Run, View it Web and Export
  • Request Builder – URL encode, Path Variables, Headers Presets
  • Response Viewer – Save Response
  • History – Multiple Select requests and Saving to existing or to new Collection
  • Postman Console – Exploring Console and Dev Tools
  • Postman – Adding Certificates
  • Capturing HTTP Requests
  • Proxy
  • Generate Code
  • Making SOAP Requests


Session 18: Postman – Part 3(1 hour)

  • History – Multiple Select requests and Saving to existing or to new Collection
  • Postman Console – Exploring Console and Dev Tools
  • Postman – Adding Certificates
  • Capturing HTTP Requests
  • Proxy
  • Generate Code
  • Making SOAP Requests
  • Collection creation – Organizing, Documentation, Test Suites – Folders and Conditional Workflows – Chaining
  • Mark down
  • Import
  • Scripting – Scripts executing order
  • Scripting – Pre-request Script and Test Scripts – Collection, Folder, Request
  • Pre-request script
  • Including Timestamp
  • Mentioning environment and Global variables
  • Refreshing end points


Session 19: Postman – Part 4(1 hour)

  • Collection creation – Organizing, Documentation, Test Suites – Folders and Conditional Workflows – Chaining
  • Mark down
  • Import
  • Scripting – Scripts executing order
  • Scripting – Pre-request Script and Test Scripts – Collection, Folder, Request
  • Pre-request script
  • Including Timestamp
  • Mentioning environment and Global variables
  • Refreshing end points
  • Test Scripts – To validate response code
  • Test Scripts – To set environment and global variables
  • Test Scripts – To validate response body
  • Test Scripts – Test examples
  • Request Chaining and Looping
  • Postman sandbox and API Reference
  • Variables – To avaoid DRY
  • Types of variables in Postman


Session 20: Postman – Part 5(1 hour)

  • Test Scripts – To validate response code
  • Test Scripts – To set environment and global variables
  • Test Scripts – To validate response body
  • Test Scripts – Test examples
  • Request Chaining and Looping
  • Postman sandbox and API Reference
  • Variables – To avaoid DRY
  • Types of variables in Postman
  • Scripts + Variables
  • Viewing Replaced values
  • Viewing variables
  • All about Environments – Downloading, Exporting, Deleting, Sharing and Duplicating
  • All about Runner – Environment Selection, Iterations, Delay, Log Responses, Data, Type of File
  • All about Runner – Running Multiple Iterations, Handling Data files, Export Results
  • CLI+NewMan
  • node.js installation
  • NewMan installation
  • Reporting – CLI Report, HTML Report, JSON Report and XML Report


Session 21: Postman – Part 6(1 hour)

  • All about Runner – Running Multiple Iterations, Handling Data files, Export Results
  • CLI+NewMan
  • node.js installation
  • NewMan installation
  • Reporting – CLI Report, HTML Report, JSON Report and XML Report
  • CI using newman
  • Jenkins – Installation
  • Download file and execute using CMD
  • Open localhost:8080 and enter administrator password


Session 22: Postman and Jenkins(1 hour)

  • All about Runner – Running Multiple Iterations, Handling Data files, Export Results
  • CLI+NewMan
  • node.js installation
  • NewMan installation
  • Reporting – CLI Report, HTML Report, JSON Report and XML Report
  • CI using newman
  • Jenkins – Installation
  • Download file and execute using CMD
  • Open localhost:8080 and enter administrator password
  • About API Documentation
  • Monitor – Set up monitor
  • Mock Server
  • Summary


Session 23: Swagger UI (1 hour)

  • About Swagger UI
  • What is Open API Specification?
  • Uses of Swagger UI
  • Postman versus Swagger UI
  • Sample Swagger UI example


Session 24: Browser Extensions and Console Features (1 hour)

  • Browser Extensions
  • Restlet Client – REST API Testing and its demonstration
  • Advanced Rest Client
  • Console Features – Console, Elements, Network, Sources and Application


Session 25: Java – Part 1 (1 hour)

  • Introduction to Java
  • History and Principles of Java
  • Java Installation and configuration
  • JDK, JRE and JVM
  • Variables and types


Session 26: Java – Part 2 (1 hour)

  • Variables Continued
  • Datatypes and Types
  • Operators and Types


Session 27: Java – Part 3 (1 hour)

  • Operators Continued
  • Control Statements – if, if..else, if..else..if, Switch statements
  • Loop Control Statements – for loop, while loop, do-while loop
  • Break and Continue statements


Session 28: Java – Part 4 (1 hour)

  • Java OOPS Concepts
  • Class and Object
  • Inheritance
  • Polymorphism
  • Abstraction
  • Encapsulation
  • Access specifiers – private, default, protected and public
  • Constructor and types
  • Inheritance and types


Session 29: Java – Part 5 (1 hour)

  • Packages and types
  • Encapsulation
  • Polymorphism and types
  • Abstraction – Abstract Classes and Interfaces


Session 30: Java – Part 6 (1 hour)

  • Abstraction – Abstract Classes and Interfaces
  • Java 8 Interface
  • Java Arrays – Uses, Types, Declaration and Instantiation


Session 31: Java – Part 7 (1 hour)

  • Java Strings
  • Java String Methods
  • String Immutability
  • String Comparison
  • String Buffer
  • String Builder


Session 32: Java – Part 8 (1 hour)

  • String Immutability
  • String Comparison
  • String Buffer
  • String Builder
  • this keyword
  • super keyword
  • final keyword
  • static keyword


Session 33: Java – Part 9 (1 hour)

  • Exception Handling – Uses, Types and hierarchy
  • Error
  • try catch block
  • throws
  • throw
  • User defined exceptions


Session 34: Java – Part 10 (1 hour)

  • IO Streams
  • Byte Streams
  • Character Streams


Session 35: Java – Part 11 (1 hour)

  • Collections in Java
  • List, ArrayList and LinkedList
  • Set, HashSet and LinkedHashSet


Session 36: Java – Part 12 (1 hour)

  • Set, HashSet and LinkedHashSet
  • Iterator, hasNext(), next() and remove()
  • for-each loop
  • ListIterator, hasNext(), next(), previous() and hasPrevious()
  • Map Interface, HashMap, LinkedHashMap and TreeMap
  • Iterator through Map using Map.Entry


Session 37: Java – Part 13 (1 hour)

  • Java Threads
  • Life cycle of Thread
  • Creating Thread using Thread class
  • Creating Thread using Runnable interface
  • Thread Priority
  • Java Thread Pool
  • Thread Group


Session 38: Apache HTTP Client (1 hour)

  • Java Thread Pool
  • Synchronization in Java
  • Introduction to Apache HTTP Client
  • Configuring HTTP Client


Session 39: Gradle (1 hour)

  • About Gradle
  • Gradle Installation
  • Introduction to Apache HTTP Client


Session 40: Apache HTTP Client – Part 2 (1 hour)

  • HTTPClient Syntax
  • HTTPClient Interface
  • HTTPClient Builder
  • Closeable HTTPClient
  • Executing Request
  • HTTP Response


Session 41: Apache HTTP Client – Part 3 (1 hour)

  • HTTP Entity
  • HttpPost
  • HttpPatch


Session 42: Apache HTTP Client – Part 4 (1 hour)

  • HttpPut and its constructors
  • HttpDelete and its constructors
  • Handling XML response request using HttpClient
  • HttpClient Exceptions – Transport Exceptions and Protocol Exceptions


Session 43: Apache HTTP Client – Part 5 (1 hour)

  • Headers
  • Fluent API


Session 44: Apache HTTP Client – Part 6 (1 hour)

  • Multipart body request handling
  • URL encoded request handling
  • Response handling using POJO
  • Response handling using JSON node


Session 45: Apache HTTP Client – Part 7 (1 hour)

  • Multipart body request handling
  • URL encoded request handling
  • Response handling using POJO
  • Response handling using JSON node
  • Overview of framework
  • Tools used
  • Framework structure


Session 46: Apache HTTP Client – Part 8 (1 hour)

  • Framework – Folder Structure
  • Framework – Features
  • Framework – Explanation of each class
  • Framework – writing different tests


Session 47: Apache HTTP Client – Part 9 (1 hour)

  • Framework – Folder Structure
  • Framework – Features
  • Framework – Explanation of each class
  • Framework – writing different tests
  • Different Utility Classes – Response Utils
  • Different Utility Classes – Request Utils
  • Different Utility Classes – HttpAPIExecutor
  • Different Utility Classes – HttpRequestBuilder
  • Different Utility Classes – ConstructUrl
  • Different Utility Classes – MultipartBody
  • Different Utility Classes – APIDetails
  • Different Utility Classes – GenericUtils


Session 48: Apache JMeter – Part 1 (1 hour)

  • Introduction to Apache JMeter
  • JMeter Installation
  • JMeter Features
  • Steps to create sample request
  • About HTTP Request


Session 49: Apache JMeter – Part 2 (1 hour)

  • Forming GET request in JMeter
  • Forming POST request in JMeter
  • Forming PUT request in JMeter
  • Forming PATCH request in JMeter
  • Forming DELETE request in JMeter
  • Forming multipart request in JMeter
  • Forming authenticated request in JMeter
  • Request Chaining


Session 50: Apache JMeter – Part 3 (1 hour)

  • Request Chaining
  • JSON Extractor
  • JSR223 Assertion
  • JSR223 Preprocessor
  • Response Assertion
  • Duration Assertion
  • HTTP Header Manager
  • HTTP Request Defaults


Session 51: Apache JMeter – Part 4 (1 hour)

  • Components of JMeter
  • Test Plan
  • Thread Group
  • Samplers
  • Logic Controllers
  • Listeners
  • Assertions
  • Config Element
  • Timers
  • Parameterization
  • Running tests from command prompt
  • Performance Test Metrics – Setup
  • JMetric Functions
  • _log()
  • _BeanSheel()
  • _RandomString()
  • Plugin Manager


Session 52: SoapUI – Part 1 (1 hour)

  • Introduction to SoapUI
  • SoapUI Installation
  • Components of SoapUI
  • Forming REST Requests
  • Forming SOAP Requests
  • Validating the response using Assertions


Session 53: SoapUI – Part 2 (1 hour)

  • SOAP or REST
  • WSDL or WADL
  • Test Suite
  • Test Case – Assertions, Scripting, Parameterization, Load Test and Security Test
  • Forming SOAP Requests


Session 54: SoapUI – Part 3 (1 hour)

  • Groovy Scripting
  • Properties – Project Properties and Custom Properties


Session 55: Fiddler and Telerik (1 hour)

  • Introduction to Fiddler
  • Fiddler Installation
  • Forming HTTP Requests in Fiddler
  • Introduction to TeleriK Tool
  • TeleriK Tool Installation
  • TeleriK Tool Demonstration


Session 56: Real Time API Test Automation (1 hour)

  • Types of Automation Tests
  • Acceptance Tests
  • Certification Tests
  • Service Level Tests
  • Execution flow/order of API Tests
  • Mocking
  • Mockito and Power Mockito
  • Virtualization
  • Simulator
  • Wiremock


Session 57: Rest Assured Framework – Part 1 (1 hour)

  • Introduction to Rest Assured
  • Configuring Rest Assured
  • Forming a simple request using Rest Assured


Session 58: Rest Assured Framework – Part 2 (1 hour)

  • Sample PUT Request
  • Sample PATCH Request
  • Sample DELETE Request
  • Sample formdata Request
  • Sample multipart Request
  • Sample XML Request
  • Loggin in Rest Assured
  • Request Logging
  • Response Logging
  • Log methods that rest assured support


Session 59: Rest Assured Framework – Part 3 (1 hour)

  • Unerstanding Request Specification
  • Sample Request using request specification
  • Understanding Request Specification
  • Authentication – Handling Basic Authentication


Session 60: Rest Assured Framework – Part 4 (1 hour)

  • Rest Assured and Athentication schemas
  • Basic Authentication
  • Digest Authentication
  • OAuth 1.0 Authentication
  • OAuth 2.0 Authentication
  • Set Authentication through specification
  • Forming Headers
  • Path Parameters


Session 61: Rest Assured Framework – Part 5 (1 hour)

  • Validating Response
  • Validating Simple JSON
  • Validating using Matchers Assertions
  • Validating using Inline Validation
  • Validating using Response
  • Validating using JsonPath
  • Validating using Array JSON


Happy Learning  🙂

Arun Motoori (www.qafox.com)