Posts

Testing GET Requests and their Responses using Rest Assured

Image
What is a GET Request? The GET method is used to retrieve information from the given server using a given URI. Requests using GET should only retrieve data and should have no other effect on the data. Way to send GET Request using Rest Assured and Check Status Code: For this exercise, we will use Google Places API ( Place Search ). You can view the API at below link : Google Place Search API We will learn about the Text Search GET request of Google Places API. A Text Search request is an HTTP URL of the following form: https://maps.googleapis.com/maps/api/place/textsearch/output?parameters where  output  may be either of the following values: json  (recommended) indicates output in JavaScript Object Notation (JSON) xml indicates output as XML Certain parameters are required to initiate a search request. As is standard in URLs, all parameters are separated using the ampersand ( & ) character. Testing HTTP Error Codes We will verify t...

Extracting a JSON Response with Rest-Assured

Image
In the earlier post, we studied about Testing GET Requests and their Responses using Rest Assured , before following this tutorial, I would recommend reading the previous one. In this post, we will learn about extracting JSON Response using Rest Assured. Once the response is extracted we will store it into Response class and later various tests can be performed to check whether extracted response is correct. I would assume that everyone following this tutorial has knowledge of Java and TestNG. If you need help then please follow tutorials on Java and TestNG . Now let's look at an example where we will search for a particular Railway Station in Mumbai City and print the response. import org.testng.annotations.BeforeClass ; import org.testng.annotations.Test ; import io.restassured.RestAssured ; import io.restassured.http.ContentType ; import io.restassured.response.Response ; import static io. restassured . RestAssured .*; public class GetJsonResponseTest { ...

Beautify JSON and directly copy JSON Path using this chrome extension

Image
Beautify JSON Generally the JSON that we get when we hit an API is in raw format and difficult to read as follows { "error" : false , "category" : "Programming" , "type" : "single" , " joke" : "Two C strings walk into a bar.\nThe bartender asks \ "What can I get ya?\"\nThe first string says \"I'll have a gin and tonic. \"\nThe second string thinks for a minute, then says \"I'll take a tequila sunriseJF()#$JF(#)$(@J#()$@#())!*FNIN!OBN134ufh1ui34hf9813f8h8384h981h3984h5F!##@ \"\nThe first string apologizes, \"You'll have to excuse my friend, he's not nu ll-terminated.\"" , "flags" :{ "nsfw" : false , "religious" : false , "political" : false , "racist" : false , "sexist" : false , "explicit" : false }, "id" : 28 , "safe" : true , "lang" : "en" } Either...

Update values in Post Data using Json Path in Rest Assured

Image
In the previous post we studied about how to validate json schema in Rest Assured. In this post we will study about how to update values in Post Data (JSON) using Json Path in Rest Assured. When we have multiple dynamic values in POST Data which will change every time  then we need to read those values from previous request and use those values to update the POST Data (JSON). This is specifically used when the hardcoded values in JSON Data like specific ID's won't work. For example in following POST Data : { "id" : 1 , "name" : "ashwin" , "surname" : "karangutkar" , "details" :{ "City" : "Mumbai" }} If I need to change City then Json Path that we will use is details.City . Before having a glance at code, we will need to import  Jayways JsonPath .  Following is the maven import: <!-- https://mvnrepository.com/artifact/com.jayway.jsonpath/json-path --> <depende...

Validate JSON Schema using Rest Assured

Image
JSON Schema is a powerful tool for validating the structure of JSON data or your JSON Response. JSON Schema itself is written in JSON. It is data itself, not a computer program. It’s just a declarative format for “describing the structure of other data”.  The JSON document being validated or described we call the   instance , and the document containing the description is called the   schema . JSON Schema validation is done to check whether the response received is correct or is structured according to the defined schema for your project.  Let's loo k at an example of JSON Schema validation using Rest Assured. Here we are making use of Google Search API that we studied in  Testing GET Requests and their Responses using Rest Assured . I would highly recommend reading previous posts before reading this one. Lets us create a JSON File where we will define the JSON Schema for our response ( JSON Schema of a Response that we will get when...

Extracting an XML Response with Rest-Assured

Image
In the earlier post, we studied about  Extracting a JSON Response with Rest-Assured , before following this tutorial, I would recommend reading the previous one. In this post, we will learn about extracting an XML Response using Rest Assured. Once the response is extracted we will store it into Response class and later various tests can be performed to check whether extracted response is correct.  I would assume that everyone following this tutorial has knowledge of Java and TestNG. If you need help then please follow tutorials on  Java  and  TestNG . Now let's look at an example where we will search for a particular Railway Station in Mumbai City and print the response. import org.testng.annotations.BeforeClass; import org.testng.annotations.Test; import static io.restassured.RestAssured.*; import io.restassured.RestAssured; import io.restassured.http.ContentType; import io.restassured.response.Response; public class GetJsonResponseTest { ...

Popular posts from this blog

Using RequestSpecBuilder in Rest Assured ( Code Reuse )