【问题标题】:Scenario: First response success, but second same request return 404 error code场景:第一次响应成功,但第二次相同的请求返回 404 错误码
【发布时间】:2021-03-02 20:53:01
【问题描述】:

我需要什么时候做第一次请求然后得到存根响应代码 = 401。

第二个 SAME 请求何时获得存根响应代码 = 200。

为此,我使用场景。

这是我在一个文件中的 WireMock 映射:

{
  "scenarioName": "Request transfer, 401",
  "requiredScenarioState": "Started",
  "newScenarioState": "Triggered Once",
  "request": {
    "method": "POST",
    "urlPattern": "/api/T2A"
  },
  "response": {
    "headers": {
      "Content-Type": "application/json"
    },
    "status": 401
  }
}

{
  "scenarioName": "Request transfer, 200",
  "requiredScenarioState": "Triggered Once",
  "newScenarioState": "Started",
  "request": {
    "method": "POST",
    "urlPattern": "/api/T2A"
  },
  "response": {
    "headers": {
      "Content-Type": "application/json"
    },
    "status": 200,
    "bodyFileName": "VB/back/request_transfer.json"
  }
}

第一次请求时我得到存根响应 = 401。

很好。但是第二个相同的请求 WireMock 何时返回错误代码 = 404。

                                               Request was not matched
                                               =======================

-----------------------------------------------------------------------------------------------------------------------
| Closest stub                                             | Request                                                  |
-----------------------------------------------------------------------------------------------------------------------
                                                           |
POST                                                       | POST
/api/T2A                                                   | /api/T2A
                                                           |
                                                           |
-----------------------------------------------------------------------------------------------------------------------

2021-03-02 22:44:34.802 Request received:
127.0.0.1 - POST /api/T2A

{"MTS":"2be192ca-dabe-47b9-b","IDNP":"1"}


Matched response definition:
(no response definition configured)

Response:
HTTP/1.1 404
(no headers)


2021-03-02 22:44:34.805 Received request to /not-matched with body 

为什么第二个 SAME 请求不返回存根响应状态 = 200?

【问题讨论】:

    标签: wiremock


    【解决方案1】:

    您的场景必须具有相同的名称。这就是 WireMock 识别映射属于该场景的方式。

    您收到 404,因为 Scenario Request transfer, 401 和 ScenarioState Triggered Once 没有映射。

    将两个映射的方案名称更改为 Request transfer 将解决您的问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-01-30
      • 1970-01-01
      • 2019-06-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多