Xml 在 Rest Assured 中的断言
Assertion for Xml in Rest Assured
我终于想出了如何从 XML 中获取列表。然而,Rest Assured 网站并没有讨论如何对我得到的列表做出断言。我如何断言这部电影有布鲁斯威利斯作为演员,并以给定的形式确定,何时,然后?我是否在 given() 中使用列表?
@Test
public void verifyBruceWillisIsInDieHard() {
String xmlPath = get(
"http://www.omdbapi.com/?t=Die+Hard&y=&plot=short&r=xml")
.andReturn().body().asString();
XmlPath actor = new XmlPath(xmlPath);
actor.setRoot("movie");
List<String> nameOfFirstActor = actor.getList("movie.@actors");
System.out.println(nameOfFirstActor);
也许是这样的?
when().
get("http://www.omdbapi.com/?t=Die+Hard&y=&plot=short&r=xml").
then().
body("movie.@actors", hasItem("bruce willis"));
对您的回答稍作调整,此方法有效。
when().
get("http://www.omdbapi.com/?t=Die+Hard&y=&plot=short&r=xml").
then().
body("root.movie.@actors", containsString("Bruce Willis"));
我终于想出了如何从 XML 中获取列表。然而,Rest Assured 网站并没有讨论如何对我得到的列表做出断言。我如何断言这部电影有布鲁斯威利斯作为演员,并以给定的形式确定,何时,然后?我是否在 given() 中使用列表?
@Test
public void verifyBruceWillisIsInDieHard() {
String xmlPath = get(
"http://www.omdbapi.com/?t=Die+Hard&y=&plot=short&r=xml")
.andReturn().body().asString();
XmlPath actor = new XmlPath(xmlPath);
actor.setRoot("movie");
List<String> nameOfFirstActor = actor.getList("movie.@actors");
System.out.println(nameOfFirstActor);
也许是这样的?
when().
get("http://www.omdbapi.com/?t=Die+Hard&y=&plot=short&r=xml").
then().
body("movie.@actors", hasItem("bruce willis"));
对您的回答稍作调整,此方法有效。
when().
get("http://www.omdbapi.com/?t=Die+Hard&y=&plot=short&r=xml").
then().
body("root.movie.@actors", containsString("Bruce Willis"));