wiremock - 无法识别 Wiremock 占位符
问题描述
我尝试使用以下 json,但wiremock 无法识别我的更改。我阅读了wiremock的文档,看到他们说:JSON相等匹配基于JsonUnit,因此支持占位符。我也尝试过使用 JDK 8 和 JDK 13,但两者都不起作用
下面是详细信息
"method" : "POST",
"bodyPatterns" : [{
"equalToJson" : {
"recipient": {
"address": {
"city": "Bellevue",
"postalCode": "52031",
"countryCode": "US"
}
},
"sender": {
"address": {
"city": "",
"postalCode": "",
"countryCode": "HK"
}
},
"shipDate": "${json-unit.any-string}",
"accountNumber": {
"key": ""
}
},
使用 mock 运行 selenium 测试时的结果(我通过 执行了 mock java -jar tmp/wiremock.jar --global-response-templating --root-dir ./mock --port 1337
):
|
{ | { <<<<< Body does not match
"recipient" : { | "recipient" : {
"address" : { | "address" : {
"city" : "Bellevue", | "city" : "Bellevue",
"postalCode" : "52031", | "postalCode" : "52031",
"countryCode" : "US" | "countryCode" : "US"
} | }
}, | },
"sender" : { | "sender" : {
"address" : { | "address" : {
"city" : "", | "city" : "",
"postalCode" : "", | "postalCode" : "",
"countryCode" : "HK" | "countryCode" : "HK"
} | }
}, | },
"shipDate" : "${json-unit.any-string}", | "shipDate" : "May-26-2020",
"accountNumber" : { | "accountNumber" : {
"key" : "" | "key" : ""
} | }
} | }
|
任何人都可以在这里提出一些建议。感谢您阅读我的问题
解决方案
您必须启用如下占位符,并且您应该确保您使用的是 jre-standalone jar。你似乎在使用普通的独立 jar
"enablePlaceholders" : true
推荐阅读
- javascript - 点击时获得相同的 Google Maps Marker id
- python - 不,Feedparser 5.2.1 没有在 Python 中安装/工作(对我来说)
- node.js - 当我为 NodeJS 使用 http-server 时如何访问 index.html 页面?
- windows - Powershell Loop 不等待命令完成
- jquery - 如何从两个不同的复选框值更改跨度文本
- c - 为什么允许`typedef struct xx`?
- javascript - Padding 防止元素渲染,Chrome v75 中的 Flexbox 错误
- mysql - 我正在使用按关键字分组,但它将“h”和“H”分组为一个
- shell - 为什么shell printf 在不引用时会一起运行字符串?
- java - 这个用于 2D 凸平面的凸壳算法叫什么?