我正在尝试定义存根:
{
"predicates":[
{
"equals":{
"method":"GET",
"path":"/sword/eBISXMLInvoice2.do",
"query": {
"action": "index",
"page": 3 <-- this one!
}
}
}
],
"responses":[
{
"is":{
"statusCode":200,
"headers":{
"Content-Type":"application/xml"
},
"body":"<doclist><document uuid='101654' type='invoice' date='2018-11-14 13:49:43' /></doclist>"
}
}
]
}
期望的查询字符串参数之一(称为“页面”)可以具有多个值。我该如何定义谓词来处理呢?
答案 0 :(得分:0)
我的问题实际上很容易回答。根据{{3}},“等于”谓词将在任何值匹配的情况下匹配。
全文:
有时您可能会遇到多值键。可能是这种情况 带有带有重复键的querystrings和HTTP标头,用于 示例
?key=first&key=second
。在这种情况下,deepEquals将 要求所有值(以任何顺序)匹配。所有其他谓词 如果任何值匹配,将匹配,因此等于谓词将匹配 在上面的示例中,其值为second
。
所以我可以从谓词中删除可更改的查询字符串值,也可以将其保留在谓词中,这没关系。
{
"equals":{
"method":"GET",
"path":"/sword/eBISXMLInvoice2.do",
"query": {
"action": "index"
}
}
}