我正在测试changePassword()方法。我首先通过输入错误密码进行检查,然后在第二部分正确输入参数。但是,对于错误的密码,它给了我 body() 的错误。如果我log().body()它不会打印出任何东西,但状态代码匹配。如果我做body("errors[0]",equalTo("Wrong password")),它会向我显示此行的错误“预期的响应正文将被验证为JSON
,HTML
或者在响应中XML
没有content-type
定义。 ”
given().
contentType("application/json").
header("ID", "2501").
param("newPass", "pass2017").
param("oldPass", "pass2015"). // wrong password
when().
put("/v1/password").
then().
statusCode(400).
//log().body();
body("errors[0]",equalTo("Wrong password"));
同样对于正确的参数,它说Expected status code <200> doesn't match actual status code <400>.
我不知道我可能给出错误的参数,似乎一切正常。谁能解释一下这些代码有什么问题?
given().
contentType("application/json").
header("ID", "2501").
param("newPass", "pass2017").
param("oldPass", "pass2016").
when().
put("/v1/password").
then().
statusCode(200).
//log().body();
body("content.response", equalTo(true)) ;
谢谢!
更新:我在 Swagger 上检查了这个方法,效果很好。