response body in api code example
Example 1: request body api
REQUEST :(request url,http methods,header,query param, param,body,cookie)
1-)Request Url where we have Endpoint (domain:Port/Endpoints)
2-)HTTP METHODS(Get, Post, Put, Patch, Delete, Header)
Get: For to retrieve resources from the server
Post: to send or add resource to the server
Put: For update the resources in the server
Patch: For partial update the resource
Delete: For deleting the resource in the server
Head: To get header from the response not the body
3-)HEADER is metadata is about the request,
basically providing more information along
with the request.
-Content Type header : to specify what kind of
data we are sending to the server
-Accept Header : to specify what kind of data
format you want to get in the response like (json or xml)
-Authorization header : used to provide the
Bearer token in many api's.
4-)Query Parameter: A key value pair usually
for filtering result
5-)Parameter: for identifying single resource
among the list of resources.
6-)Payload(BODY): for POST,PUT,PATCH request
(json,xml,plainText,URL encoded for data)
7-)Cookie
Example 2: api response
Response
Status code
2xx -->> success
4xx -->> client side error
5xx -->> server side error
Header
meta data about your response
like Content-Type, Date and some other info
Body | Payload
The response we got from the server
and this where we do lots of validation
Example 3: response body api
Basicall we are checking response body
to verify if request matches with response.
In the response we are verifying
(body, status code, header, response time,
test structure of json against the given jsonSchema)
If file not under resources:
File schemaFile = new File("src/test/resources/postSuccessResponseSchema.json");
given()
.spec(adminReqSpec)
.contentType(ContentType.JSON)
.body(abcUtil.getRandomHeroPOJO_Payload()).
when()
.post("/HEROS").
then()
.body(matchesJsonSchema( schemaFile ) )
If schema file under resources:
given()
.spec(adminReqSpec)
.queryParam("nameContains","a")
.queryParam("gender","Female").
when()
.get("/abc/search").
then()
.time( lessThan(2000L));
.body(matchesJsonSchemaInClasspath("searchSpartanSchema.json") )