Python 为mountebank测试设置查询参数
我想设置端点Python 为mountebank测试设置查询参数,python,rest,testing,mountebank,Python,Rest,Testing,Mountebank,我想设置端点/trends?param1=PT-31。下面是我在冒名顶替中设置谓词的方法。然而,似乎没有匹配,我也没有得到回应 我错过了什么 "predicates": [ { "and": [ { "deepEquals": { "path": "/trends",
/trends?param1=PT-31
。下面是我在冒名顶替中设置谓词的方法。然而,似乎没有匹配,我也没有得到回应
我错过了什么
"predicates": [
{
"and": [
{
"deepEquals": {
"path": "/trends",
"query": {
"param1" : [
"PT-31", "PT-32"
]
},
"method": "GET",
"headers": {
"Content-Type": "application/json"
}
}
}
]
}
]
看起来您的问题是谓词中需要两个参数-PT-31和PT-32-这两个参数将匹配/trends?param1=PT-31¶m1=PT32的路径,但不匹配/trends?param1=PT-31 其他几条建议,希望它们有用:
- 因为您使用的是deepEquals,所以它甚至不匹配/趋势?param1=PT-31¶m1=PT-32¶m1=PT-33。它需要精确匹配。如果你想更灵活一点,我建议使用equals
- 最外层的“and”谓词是不必要的。单个运算符(“deepEquals”)中的所有谓词都会自动进行AND运算
- 路径
/test
或/trends
?对不起。应该是/trends
,然后请编辑您的问题并更正此打字错误。完成。更新了有问题的路径。明白了,谢谢!关于如何为param1
匹配PT-31
和PT-32
中的任何一个有什么想法吗?是的,这就是“or”谓词,所以它应该是这样的:{“or”:[{“equals”:{“query”:{“param1”:“PT-31”},{“equals”:{“query”:{“param1”:“PT-32”}}}