无法使用content-type在post请求上创建模拟:application / x-www-form-urlencoded

时间:2017-06-07 13:28:32

标签: rest testing mocking mountebank

我正在与mountebank合作为外部REST API创建模拟 这是一个content-type : application/x-www-form-urlencoded的POST请求。

API的格式为

https://<url>/dpay/MPmt

,数据有效负载以格式msg=01223~20170607114321~ABC~12345~NA~NA

传递

我必须在~ABC~12345~的基础上进行搜索,这将保持不变。

我使用包含,匹配和等于谓词,但在请求正文中传递有效内容时无法运行它们。

但是,当将有效负载作为查询参数传递时,我能够使其运行

https://url/dpay/MPmt?msg=01223~20170607114321~ABC~12345~NA~NA

但在请求正文中传递时无法找到完成它的方法。

任何指针都会非常感激。

1 个答案:

答案 0 :(得分:2)

使用谓词“contains”并仅传递匹配的字符串。我怀疑你正在使用

“包含”: { “身体” : {    “msg”:“~ABC~12345~”   }  }

这将在请求体中查找msg变量,而不是使用

“contains”:{“body”:“~ABC~12345~”}

,它会直接在您的请求正文中与之匹配。

我遇到了同样的问题,希望它适合你。