Wiremock-即使相同,URL也不匹配

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

我面临一个奇怪的问题?Wiremock说我的网址即使相同也没有匹配。显然我缺少了一些东西。我在做什么错?

        WireMock.stubFor(WireMock.get(WireMock.urlPathEqualTo("/test/url?bookingCode=XYZ123&lastName=TEST"))
            .willReturn(WireMock.aResponse()
                    .withStatus(200))
    )

下面是控制台日志。

-----------------------------------------------------------------------------------------------------------------------
| Closest stub                                             | Request                                                  |
-----------------------------------------------------------------------------------------------------------------------
                                                           |
GET                                                        | GET
/test/url?bookingCode=XYZ123&lastName=TEST                 | /test/url?bookingCode=XYZ123&lastName=TEST            <<<<< URL does not match
                                                           |
                                                           |
-----------------------------------------------------------------------------------------------------------------------

是因为我不在匹配器中包含标题吗?如果是,如何避免匹配标题?无论我发送什么标题,我都希望得到响应。

spring-boot kotlin spring-boot-test wiremock
1个回答
0
投票

找到原因。WireMock.urlPathEqualTo("/test/url?bookingCode=XYZ123&lastName=TEST")应该没有查询参数。

将其更改为WireMock.urlPathEqualTo("/test/url")已解决了该问题。

Documentation表示允许。另外,日志URL does not match引起了混乱。考虑到匹配检查是单独的,wiremock可以为查询参数添加单独的日志。

已创建的问题:https://github.com/tomakehurst/wiremock/issues/1262

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