在放心使用POST方法时获得302

时间:2017-09-11 05:59:53

标签: post methods rest-assured

我已经编写了如下测试用例并得到了以下错误,

日志错误:

  

失败:setpassword java.lang.AssertionError:1期望失败。   预期状态代码< 200>但是< 302>。

代码:

@Test(enabled=true)

public void setpassword(){
    RequestSpecification requestSpecification= new Config().getRequestSpecification();
    RequestSpecification requestHeaders= new Config().getHeaders();

    Map<String,String> password = new HashMap<String, String>();
    password.put("password", "Password@2017");
        given().spec(requestSpecification).spec(requestHeaders).body(password).when().post("https://example.com/testplatform@example.com/password").
    then().statusCode(200).log().all();


}

3 个答案:

答案 0 :(得分:0)

我解决了这个问题。我得到了302错误,因为api url被编码了。我使用了urlEncodingEnabled(false),它解决了这个问题。

答案 1 :(得分:0)

这对我有帮助:

given().log().all().contentType("application/x-www-form-urlencoded; charset=UTF-8")
                .redirects().follow(false).redirects().max(100) 
                .queryParam()...

答案 2 :(得分:0)

另外,就我而言,我有带有JWT令牌的URL来测试lin /网站。它引起了我的注意,我没有使用url + JWT作为完整链接。我无视JWT,仅使用链接,因此它没有重定向网站。