API Testing with Microservices 

API TESTING

 

1.   Introduction to API and definition.

2.   Difference between website (3 tier) vs website with services (n tier)

3.   What is SOA (service-oriented architecture)

4.   Services development & Testing, Registration and Utilizing

4.1   Types of services.

a.     RESTFUL services.

b.     Microservices.

4.2   About development technologies to be used in services/API development.

 

5.   HTTP

5.1   HTTP, HTTP methods, HTTP response codes, HTTPS (HTTP + SSL)

 

6.   Webserver vs application server

7.   DNS

7.1  Proxy.

7.2 Definition and its uses.


1. Need for API testing

·       Agile process to emulate need for API testing.

2.   Service oriented architecture terminology

3.   What is the Test pyramid for API Testing

·       HTTP Request algorithm

·       HTTP Response algorithm (Case Study and Notes)

·       Create a Rest project

·       Select HTTP method

·       Add parameters

 

4.  Types of API parameters

·   Template/path parametersQuery parameters

·       Matrix parameters

·   Request body parameters Request header parameter

Way-1: Authentication with credentials Way-2: Bearer Authorization/ HMAC

Authorization Way-3: API keys Way-4: OAuth 2.0

·        Plain Parameters

·        Resource Naming with Practical Programs using SOAP UI Tool with Examples Refer to API documentation

 

 

5.  Convert Request to Test Case (navigation)

6.  Add Assertions

7.  Expressions vs Tools vs Languages

8.  Regular Expressions


 

9.                       Xpath Expressions

10.                  Xquery Expressions

11.                  JSON with JSONPath

12.                  WADL and WSDL Files

13.                  Run Test Case to Submit Request

14.                  Analyse Response and Test Results

15.                  RestAssured Getting Started

        Why static imports?

        Method chaining concept?

        Automate GET Request – Assert Status Code

        Automate GET Request – Assert Response Body

        Automate GET Request – Extract Response

        Automate GET Request – Extract Single Field

        Hamcrest Assertion on Response

        What is Hamcrest and Why it is popular?

        Executing Hamcrest Collection Matchers


16.                  RestAssured – Logging

        Request and Response Logging

        Log if Error and Validation Fails

        Log if Blacklist Headers

 

17.                  RestAssured Handling Headers

        What are Headers?

        Set Mock Environment for Headers

        Multiple Headers in Request

        Multiple Headers in Request using Headers.

        Multiple Headers in Request using Map.

        Multi Value Header

 

18.                  RestAssured – Request Specification

19.                  RestAssured – Response Specification

20.                  RestAssured – Automate POST ,PUT,GET DELETE

21.                  RestAssured – Send Request Payload MultipleWays

22.                  RestAssured – Send Complex JSON as Request

23.                  RestAssured- Handling Request Parameters

24.                  RestAssured-File upload and Download

25.                  RestAssured- Filters

26.                  Serialization and DE-serialization

27.                  Jackson Annotation

28.                  Complex POJO

29.                   Authentication and Authorization


MICROSERVICES TESTING

1.   Introduction to Microservices and definition.

2.   Difference between WebServices and Microservices

3.   How are Microservices are different from WebServices

4.   Architecture of Miceroservices

5.   What are Microservices Characterstics

6.   What are key challenges of Microservices

7.   Test Pyramid of Microservices

8.   Wiremock and its configuration

9.   Developing Mock Services

10.                  Isolation Testing

11.                  Component Testing

12.                  CDCT (Component Driven and Contract Testing)