0

我正在测试changePassword()方法。我首先通过输入错误密码进行检查,然后在第二部分正确输入参数。但是,对于错误的密码,它给了我 body() 的错误。如果我log().body()它不会打印出任何东西,但状态代码匹配。如果我做body("errors[0]",equalTo("Wrong password")),它会向我显示此行的错误“预期的响应正文将被验证为JSONHTML或者在响应中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 上检查了这个方法,效果很好。

4

0 回答 0