如何在 Rest Assured 中驗證 XML 響應?


我們可以在 Rest Assured 中驗證 XML 響應。為了獲取 XML 響應,我們必須將引數 ContentType.XML 傳遞給 accept 方法。我們首先將透過 Postman 對模擬 API URL 傳送 GET 請求。

使用 Rest Assured,我們將驗證其 XML 響應,其中包含主題 Rest Assured、Postman 的名稱,以及它們的價格分別為 10 和 6。

在上面的 XML 響應中,我們將透過遍歷路徑 - courses.subject.name 和 courses.subject.price 分別獲取 name 和 price 標籤的值。

我們將藉助 Hamcrest 框架執行斷言,該框架使用 Matcher 類進行斷言。要使用 Hamcrest,我們必須在 Maven 專案的 pom.xml 中新增 Hamcrest Core 依賴項。此依賴項的連結可在以下連結中找到:

https://mvnrepository.com/artifact/org.hamcrest/hamcrest-core

示例

程式碼實現

import org.hamcrest.Matchers;
import org.testng.annotations.Test;
import static io.restassured.RestAssured.*;
import io.restassured.RestAssured;
import io.restassured.http.ContentType;
public class NewTest {
   @Test
   void validateXMLResponse() {

      //base URI with Rest Assured class
      RestAssured.baseURI = "https://run.mocky.io/v3";

      //accept XML CONTENT
      given().accept(ContentType.XML)

      //GET request .when().get("/55889581-
      da52-4383-840e-bdf6dde19252")

      //validate XML body
      .then().assertThat()

      //validate subject lists
      .body("courses.subject.name", Matchers.hasItems
      ("Rest Assured", "Postman"))
      .and().assertThat()

      //validate price lists
      .body("courses.subject.price", Matchers.hasItems("10", "6"));
   }
}

輸出

更新於: 2021 年 11 月 18 日

7K+ 瀏覽量

開啟你的 職業生涯

透過完成課程獲得認證

立即開始
廣告

© . All rights reserved.