Can we build RequestSpecification of io.restassured in step by step manner?

Viewed 823

I am forming io.restassured request/response in following manner

    Response response = RestAssured.given().headers("Authorization", "Bearer    token).contentType(ContentType.JSON).body(tempJsonString).post(MY_ENDPOINT). 
    andReturn();

I want to create the request in step by step manner for e.g.,

    //Authorization
     RequestObject request = RestAssured.given().headers("Authorization", "Bearer"+token);
    //Adding body; tempJsonString is already defined
    request = request.body(tempJsonString);
    //Adding HTTP Verb; MY_ENDPOINT is already defined
    request = request.post(MY_ENDPOINT)
    //Finally
    Response response = request().andReturn();

Is it possible in io.restassured DSL?

1 Answers

You can use io.restassured.builder.RequestSpecBuilder class

RequestSpecBuilder requestBuilder = new RequestSpecBuilder();
requestBuilder.setBaseUri("http://www.example.com");
requestBuilder.setBasePath("/path");
requestBuilder.addHeader("Authorization", "Bearer" + token);
RequestSpecification request = RestAssured.given().spec(requestBuilder.build()).when();
Response response = request.post().andReturn();
Related