我是使用Rest Assured,Java和Api测试的新手,所以请对我保持谨慎。当我使用放心的方式来测试使用承载身份验证的api时,测试将失败,从而导致:-
java.net.ConnectException:连接被拒绝:connect

我知道问题可能与身份验证有关,但不确定如何使用“承载者”。我四处搜寻,并认为我需要使用用户名和密码提出初始请求。然后取回 token 以用于承载身份验证。
请有人可以通过一个非常简单的示例来帮助我做到这一点吗?

我的代码是

import com.jayway.restassured.RestAssured;
import static com.jayway.restassured.RestAssured.*;
import static org.hamcrest.Matchers.hasItem;

@BeforeTest
    public void setUp() {
        RestAssured.enableLoggingOfRequestAndResponseIfValidationFails();
        RestAssured.authentication =   preemptive().basic("username","password");

}

@Test
public void successfulTest() {
    given()
            .contentType("application/json; charset=UTF-8");

    when().

            get("http://mydomain/testpath/Id=2").
    then().
            statusCode(200);

}

最佳答案

Response response =
      given()
          .headers(
              "Authorization",
              "Bearer " + bearerToken,
              "Content-Type",
              ContentType.JSON,
              "Accept",
              ContentType.JSON)
          .when()
          .get(url)
          .then()
          .contentType(ContentType.JSON)
          .extract()
          .response();

08-26 05:44