[英]Wiremock and XPath attribute testing
假設我有一個包含以下代碼段的 XML 請求
<foo bar="12356"/>
我的服務將此代碼段發送到另一個服務以執行操作。 該服務需要一個具有bar
屬性且沒有文本節點的foo
節點。 以下表達式與該節點匹配得很好
//foo[@bar='12356']
問題是 Wiremock 期望文本節點出現在匹配的foo
節點中,因此,它認為前面的表達式不匹配。
使用wiremock你如何測試XML匹配屬性而不是文本節點?
根據 XPath 規范,命名空間很重要。 如果 xml 文件如下
<?xml ...>
<Envelope>
<foo bar="12356"/>
</Envelope>
然后提供的 XPath 表達式將起作用。 但是一旦你添加了xmlns=
聲明,你的節點就不再是foo
而是"[xmlns]":foo
。 結果, //foo
只匹配無前綴的foo
元素。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.