使用可靠的多个GET请求进行Java休息测试

时间:2015-10-16 11:21:45

标签: java rest security testing rest-assured

我有一个Spring-boot应用程序,它是我的AngularJS应用程序的REST服务。 我试图为它编写一些单元测试,这是其中一个的示例代码。

    given().
            auth().basic(USER_LOGIN, "X").
            get("http://myservice/login").
            then().assertThat().statusCode(HttpStatus.UNAUTHORIZED.value());
    given().
            auth().basic(USER_LOGIN, PASSWORD).
            get("http://myservice/login").
            then().assertThat().statusCode(HttpStatus.OK.value());

问题是我的第二个断言没有通过。但是当我试图交换他们的地方时,UNAUTHORIZED状态的断言没有通过。如果我尝试使用SoapUI重现这个测试用例,它将正常工作,两个断言都完成了。可能它以某种方式缓存了请求的结果?

P.S。我使用的安全提供程序是Spring安全性。

1 个答案:

答案 0 :(得分:1)

您可以使用以下命令重置为标准baseURI(localhost),basePath(空),标准端口(8080),默认身份验证方案(none)和默认根路径(空字符串):  RestAssured.reset();

https://rest-assured.googlecode.com/svn/tags/1.2.3/apidocs/index.html?com/jayway/restassured/RestAssured.html - 在文档中搜索重置方法。