我使用XMLUnit 1.6来测试我的xsl trasfromations。以下是两个示例测试。
在test1()中,xml没有命名空间。 test1正在通过,这是预期的。
在test2()中,xml正在使用命名空间,测试正在失败。我无法提供第二个中预期的正确xpath
assertXpathEvaluatesTo("expectedValue","xpath","ResultXML")
的论点。
@Test
public void test1() throws Exception {
String resultXML = "<MyXML><Value>3</Value></MyXML>";
XMLAssert.assertXpathEvaluatesTo("3","//Value",resultXML);
}
@Test
public void test2() throws Exception {
String resultXML = "<tns:MyXML xmlns:tns='testns'><tns:Value>3</tns:Value></tns:MyXML>";
XMLAssert.assertXpathEvaluatesTo("3","//{testns}Value",resultXML);
}
任何人都可以帮助正确的xpath值。提前谢谢。
答案 0 :(得分:1)
您可以使用xpath://*[local-name()='Value']/text()