REST Assured(RA) is a framework built on Java developed to test the REST services. It supports any HTTP method but has explicit support for GET, POST, PUT, DELETE, HEAD, OPTIONS, PATCH and includes specifying & validating like Headers, Cookies etc.
RA has inbuilt support for multiple authentication like BASIC, OAuth, OAuth2, Form, Certificate, Digest, CSRF (Cross Site Request Forgery) etc.
RA out of the box has the support for BDD approach.
Follow the below steps to configure & test the REST web services.
String requestType = "GET";
// All the header params including Auth details if any can be added into headermap.
HashMap headermap = new HashMap<>();
headermap.put("cache-control", "no-cache");
headermap.put("Content-Type", "application/json");
headermap.put......
//Assign the request body (xml / json) to the below variable which can be used based on the service requirement.
String reqBody = "";
//Path of the response node, which need to be validated with the expected value
String validationKey = "reponse.test.orderno";
String expOrderVal = "A04BH";
String actualOrderVal = "";
//Variable to capture response
String resp = "";
resp = RestAssured.given().log().all().headers(headermap).get(url);
else if(requestType == "POST")
resp = RestAssured.given().log().all().headers(headermap).body(reqBody).post(url);
else if(requestType == "PUT")
resp = RestAssured.given().log().all().headers(headermap).body(reqBody).put(url);
..................
..........
.....
....
..
//Extract the required key value & compare with the expected value.
JsonPath path = new JsonPath(resp);
actualOrderVal = path.getString(validationKey);
if(actualOrderVal == expOrderVal)
System.out.println("Test PASS");
else
System.out.println("Test FAIL");
References:
https://github.com/rest-assured/rest-assured/wiki/GettingStarted
https://github.com/rest-assured/rest-assured/wiki/Downloads
RA has inbuilt support for multiple authentication like BASIC, OAuth, OAuth2, Form, Certificate, Digest, CSRF (Cross Site Request Forgery) etc.
RA out of the box has the support for BDD approach.
Follow the below steps to configure & test the REST web services.
STEPS:
STEP 1: Download the latest version of REST ASSURD binaries from the below location.
REST Assured Binaries.
STEP 2: Create the java project in eclipse & add the 'rest-assured-*.*.*.jar' and other dependent jars into project build path.
STEP 3: Prepare the required Input parameters like
String url = "www.testurl.com/testpath/id";String requestType = "GET";
// All the header params including Auth details if any can be added into headermap.
HashMap headermap = new HashMap<>();
headermap.put("cache-control", "no-cache");
headermap.put("Content-Type", "application/json");
headermap.put......
//Assign the request body (xml / json) to the below variable which can be used based on the service requirement.
String reqBody = "";
//Path of the response node, which need to be validated with the expected value
String validationKey = "reponse.test.orderno";
String expOrderVal = "A04BH";
String actualOrderVal = "";
//Variable to capture response
String resp = "";
STEP 4: Pass the above details as input to the REST Assured APIs, which would execute the request & validate the response.
if(requestType == "GET")resp = RestAssured.given().log().all().headers(headermap).get(url);
else if(requestType == "POST")
resp = RestAssured.given().log().all().headers(headermap).body(reqBody).post(url);
else if(requestType == "PUT")
resp = RestAssured.given().log().all().headers(headermap).body(reqBody).put(url);
..................
..........
.....
....
..
//Extract the required key value & compare with the expected value.
JsonPath path = new JsonPath(resp);
actualOrderVal = path.getString(validationKey);
if(actualOrderVal == expOrderVal)
System.out.println("Test PASS");
else
System.out.println("Test FAIL");
References:
https://github.com/rest-assured/rest-assured/wiki/GettingStarted
https://github.com/rest-assured/rest-assured/wiki/Downloads
No comments:
Post a Comment