请求正文中的正则表达式不适用于WireMock

时间:2017-05-10 09:05:00

标签: java regex junit wiremock

我正在使用WireMock模拟测试用例的第三方响应。

以下是我尝试编写存根的方法 -

wireMockRule.stubFor(post(urlMatching("/v1/url/([0-9]*)"))
    .withRequestBody(matching("\\{\"id\": \"([0-9]*)\",\"type\": " + "\"mytype\"\\}"))
    .willReturn(aResponse()
    .withStatus(200)
    .withHeader("Content-Type", "application/json")
    .withBody("{\"message\": \"Success Response.\",\"warnings\": []}")));

当我调用

时,我可以看到填充的映射
/__admin/mappings

但是当我尝试使用下面的url进行POST调用并请求正文时,我收到了404 Not Found响应 -

POST URL - /v1/url/12
Request Body - 
{
    "id": "12",
    "type": "mytype"
}

请帮助我理解我在查询请求时的错误。

注意 - 我打算存根一个在URL中有id的POST调用(我使用正则表达式),并且id属性的请求体中应该有相同的id。

0 个答案:

没有答案