提问人:Divya 提问时间:8/5/2023 更新时间:8/7/2023 访问量:134
与 XPath 包含或正则表达式匹配的 Wiremock XML 请求
Wiremock XML request matching with XPath contains or RegEx
问:
需要使用 XPath(或正则表达式)文本包含和多个 OR 值实现匹配条件。
我的请求正文:
<person_obj>
<params>
<name>David J</name>
<loca>NY</loca>
</params>
</person_obj>
匹配条件:标签包含带有或或或,其他元素/标签可以忽略。name
David
Jack
Mike
即,我已经尝试过了
"bodyPatterns": [
{
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true,
"matchesXPath":{
"expression": "//person_obj/params/name/text()",
"or": [
{"contains": "David"}, {"contains": "Mike"}, {"contains": "Jack"}
]
}
}
]
答:
0赞
Siebe Jongebloed
8/7/2023
#1
不需要单独的 or-property。只需在 text() 上使用 XPath 谓词即可。
expression": "//person_obj/params/name/text()[contains(.,'David' or .,'Mike' or .,'Jack')]"
1赞
Mani Kasi
8/7/2023
#2
这似乎有效。
"bodyPatterns": [
{
"matchesXPath":{
"expression": "/person_obj/params/name/text()",
"or": [
{"contains": "David"}, {"contains": "Mike"}, {"contains": "Jack"}
]
}
}
]
评论