我正在尝试使用REST保证测试我的登录/注销功能。是否有可能有一个REST保证测试发布登录然后发布到注销?如果没有,我该如何正确测试?
答案 0 :(得分:1)
你可以尝试
expect().statusCode(HttpStatus.SC_OK)
.given()
.parameters("user", user, "password", URL)
.cookie("cookie_name", "cookie_value")
.post("/someURL");
还有一个确定的auth呼叫。
答案 1 :(得分:1)
只需发送两个帖子(),其中一个断言() / 期望():
import org.junit.Assert;
import org.junit.Test;
import static org.hamcrest.Matchers.*;
import static com.jayway.restassured.RestAssured.*;
@Test
public void loginAndLogout(){
final String login = randomLogin();
// First post to login()
given()
.queryParam("login", login)
.queryParam("password", randomPassword())
.when().post("/login/");
// Second post to logout() with an assert
expect().statusCode(200)
.given()
.when().post("/logout/");
}
答案 2 :(得分:0)
还可以尝试以下方法:
使用xyzjson名称创建JSON文件,并将发布的有效载荷数据保留在该文件中,并使用以下代码。
Response rep = given()
.headers
.(headers)
.accept(contentType.json)
.body (xyzjson)
.when()
.post(someURL);
Assert.assertTrue(rep.StatusCode() == HttpStatus.SC_Ok);
答案 3 :(得分:0)
您的登录api调用会导致某种身份验证令牌在后续请求中重用吗? 如果是这样,我将这些视为单独的放心呼叫,以对其进行全面测试。
(登录重点)
(注销重点)