如何使用动态文件路径通过Wiremock.Net进行响应?

时间:2019-05-03 09:13:21

标签: .net wiremock

我对当前的模板功能有疑问。

我想使用WireMock.Net从文件中检索响应,为此,我正在使用具有“ BodyAsFile”属性的静态映射。

示例:

{
    "Request": {
        "Path": {
            "Matchers": [
                {
                    "Name": "WildcardMatcher",
                    "Pattern": "/bodyasfilexmltest",
                    "IgnoreCase": false
                }
            ]
        },
        "Methods": [
            "get"
        ]
    },
  "Response": {
    "StatusCode": 200,
    "Headers": { "Content-Type": "application/xml" },
    "BodyAsFile": "c:\\temp-wiremock\\__admin\\mappings\\MyXmlResponse.xml",
    "UseTransformer": false
  }
}

但是我想根据请求属性来改变响应目录,就像Handlebars模板一样。

示例(MyUniqueNumber将是每个文件夹的名称):

"BodyAsFile": "c:\\temp-wiremock\\__admin\\mappings\\_{{request.query.MyUniqueNumber}}_\\MyXmlResponse.xml",

在此示例中,变量位于路径中,但是也可以将其附加到文件名之后。

我确实对其进行了测试,看来该库尝试在加载时而不是按请求从磁盘加载文件,因此它找不到无效的路径“ c:\ temp-wiremock__admin \ mappings {{request.query.MyUniqueNumber} } \ MyXmlResponse.xml”。

当前是否支持此方案(也许以其他方式)?

1 个答案:

答案 0 :(得分:1)

此问题已在WireMock.Net version 1.0.15

中解决