【发布时间】:2014-05-12 12:28:03
【问题描述】:
我有这个 xml 文件,我需要获取类别、属性和测试用例, 我使用 XML::LibXML 和 findnodes 成功完成了它 问题是有时结构不同,所以可能会有更多 test-suite & results nodes 那么 findnodes 中的节点不正确。
那么处理它的最佳方法是什么? 如果我不知道正确的基本起始节点,则不确定如何搜索 type="Fixture(这是具有我需要的信息的节点)。
<test-A>
<test-suite type="Project">
<results>
<test-suite type="Setup">
<results>
<test-suite type="Fixture>
<categories>
<category name="AAA" />
<category name="BBB" />
</categories>
<properties>
<property name="CCC" />
<property name="DDD" />
</properties>
<results>
<test-case name="EEE" />
<test-case name="DDD" />
</results>
</test-suite>
</results>
</test-suite>
</results>
</test-suite>
</test-A>
【问题讨论】:
-
您能告诉我们您当前用来查找所需元素的 XPath 表达式吗?似乎
test-suite[type="Fixture"]应该可以解决问题,但我觉得还有一些您没有在问题中说明的进一步要求。 -
尝试了几个:'*/test-suite[type="Fixture"]' 'test-suite[type="Fixture"]' 更多...
标签: xml perl treenode xml-libxml