【问题标题】:How to use Wiremock to stub external URL?如何使用 Wiremock 存根外部 URL?
【发布时间】:2020-09-17 06:30:03
【问题描述】:

我想使用 Wiremock 来存根外部请求,如下所示:

WireMock.stubFor(post(urlEqualTo("https://rest.api.com/status"))
      .withRequestBody(equalToJson("dummy-json"))
      .willReturn(responseDefinition()
      .withBody("json-body")
      .withHeader(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_JSON_VALUE)));

存根没有被调用,代码返回 401 未授权错误。

我正在使用 Spring Boot,并将 Wiremock 配置为 @AutoConfigureWireMock(port = 0, httpsPort = 8080)

我在配置中有什么遗漏吗?我已尝试使用代理并使用 WireMockRestServiceServer,如 Spring cloud documentation 所述。

【问题讨论】:

    标签: wiremock spring-cloud-contract


    【解决方案1】:

    你不应该打电话给rest.api.com,你应该打电话给localhost:8080。这就是 WireMock 开始的地方。

    【讨论】:

    • 谢谢。但我想针对外部 API 进行测试,不支持吗?
    • 没有。你应该做的是将主机和端口作为属性注入,然后为了测试你注入wiremock的主机和端口
    猜你喜欢
    • 1970-01-01
    • 2020-10-15
    • 2017-12-03
    • 2017-01-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-26
    • 2018-06-20
    相关资源
    最近更新 更多