放心java.net.SocketException

问题描述 投票:1回答:1

我正在进行简单的后期测试, 执行post()方法时,我得到“java.net.SocketException:Operation timed out”

@Test
public void validateGetProductInfo_Prod() throws IOException {

String jsonBody = new String(Files.readAllBytes(Paths.get("src/test/resources/product.json")));

Headers basicHeaders = new Headers(asList(
        new Header("X-ApplicationAuthorizationToken", "AAABB"),
        new Header("Authorization", "Basic ABC"),
        new Header("Content-Type", "application/json")));

String produPath = "http://api.abcd.com/product/v1/product/info";

given().headers(basicHeaders)
        .body(jsonBody)
        .when()
        .post(produPath)
        .then().using().defaultParser(Parser.JSON)
        .statusCode(200);
}    

我已经验证了执行时没有错误, 在执行面向异常的post()方法?

java testing rest-assured
1个回答
2
投票

原始问题是服务端点期望用户代理标头,请求中未发送标头,因此端点没有响应。添加标题后,问题就解决了。

注意:如果未提供标头,Postman会添加默认的chrome用户代理

© www.soinside.com 2019 - 2024. All rights reserved.