我试图断言xml是否包含xpath。例如,xpath是://vmap:AdBreak[@timeOffset='00:00:20']
当我在https://www.freeformatter.com/xpath-tester.html上选中它时,它会成功返回一个元素。
但是,当我尝试使用下面的空手道机制时,它失败了:
Given url "https://ray.mond.com/"
And header Content-Type = 'application/xml'
And path "vmap/vmap.xml"
When method GET
Then status 200
* print response
* xml resp = response
* def vmap = //vmap:AdBreak[@timeOffset='00:00:20']
* match resp contains vmap
错误是
xpath does not exist: //vmap:AdBreak[@timeOffset='00:00:20'] on response
我做错了吗?我正在尝试遵循https://github.com/intuit/karate/blob/master/karate-junit4/src/test/java/com/intuit/karate/junit4/xml/xml.feature的文档。
非常感谢!
答案 0 :(得分:1)
是的,XPath有时会有一些奇怪的行为。如果您能帮助解决和修复问题,我们将不胜感激。这不是我们的优先事项,因为JSON是最常见的情况。
但这是您的解决方法:
* def vmap = /VMAP/AdBreak[@timeOffset='00:00:20']