使用WireMock请求订单验证

时间:2019-04-02 13:53:06

标签: java wiremock

我有一个API,应该按照特定的顺序放置几次。我正在使用WireMock测试我的客户端,我想检查一下测试是否以正确的顺序发出了请求。

由于此API将返回204 No Content,因此我的代码不需要先前请求的结果即可进行下一个请求,这似乎可以排除WireMock方案。

那么,WireMock是否具有类似于Mockito的inOrder的功能?

1 个答案:

答案 0 :(得分:0)

这可以通过WireMock Scenario功能来实现,此功能在文档中是一个示例:

  

例如,假设我们正在编写一个待办事项清单应用程序,其中包括   与REST服务交谈的某种富客户端的视图。我们想   测试我们的用户界面可以读取待办事项列表,添加项目并刷新   本身,显示更新的列表。

{
    "scenarioName": "To do list",
    "requiredScenarioState": "Started",
    "request": {
        "method": "GET",
        "url": "/todo/items"
    },
    "response": {
        "status": 200,
        "body" : "<items><item>Buy milk</item></items>"
    }
}

{
    "scenarioName": "To do list",
    "requiredScenarioState": "Started",
    "newScenarioState": "Cancel newspaper item added",
    "request": {
        "method": "POST",
        "url": "/todo/items",
        "bodyPatterns": [
            { "contains": "Cancel newspaper subscription" }
         ]
    },
    "response": {
        "status": 201
    }
}

{
    "scenarioName": "To do list",
    "requiredScenarioState": "Cancel newspaper item added",
    "request": {
        "method": "GET",
        "url": "/todo/items"
    },
    "response": {
        "status": 200,
        "body" : "<items><item>Buy milk</item><item>Cancel newspaper subscription</item></items>"
    }
}