Rest-assured使用

靜態導入方法

靜態導入如下方法,提高rest-assured使用效率:

io.restassured.RestAssured.*
io.restassured.matcher.RestAssuredMatchers.*
org.hamcrest.Matchers.*

使用Json Schema Validation應導入:
io.restassured.module.jsv.JsonSchemaValidator.*
在SpringMVC中,可以使用spring-mock-mvc模型的Rest Assured DSL來對Spring的controller層進行單元測試,爲此需要從RestAssuredMockMvc靜態導入這些方法,而不是io.restassured.RestAssured:io.restassured.module.mockmvc.RestAssuredMockMvc.*
示例一:JSON
某個get請求(http://localhost:8080/lotto)返回JSON。REST assured可以進行get請求並對響應信息進行處理。

// 判斷lottoId是否等於5:
get("/lotto").then().body("lotto.lottoId", equalTo(5));
// 判斷winnerId的取值是否包含23和54:
get("/lotto").then().body("lotto.winners.winnerId", hasItems(23, 54));
// 以BigDecimal返回float和double類型數據
given().
      config(RestAssured.config().jsonConfig(jsonConfig().numberReturnType(BIG_DECIMAL))).
when().
      get("/price").
then().
      body("price", is(new BigDecimal(12.12));

示例二:匿名式的JSON根節點驗證
如[1, 2, 3]這樣的匿名JSON的根屬性可以使用$或者空字符串識別:

when().
     get("/json").
then().
     body("$", hasItems(1, 2, 3));
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章