我正在尝试使用rest-assured进行集成测试。在我的一个测试案例中,我必须验证XML文件的一些属性,这些属性使用了似乎使用Groovy的GPath的放心XmlPath。使用休息保证的XML映射
我有如下结构的XML文档(ID是唯一的):
<rootelement>
<someelement id="1234" type="a">
<property key="hello" value="world" />
<property key="name" value="a name" />
<property key="status" value="new" />
<child target="645823" type="a" />
<child target="7482" type="b" />
<child target="8942" type="c">
<property key="pro" value="yes" />
</child>
</someelement>
<someelement>
...
</someelement>
<rootelement>
理想的情况下,给定一个someelement ID,我希望得到一个地图的它的属性,即假设给定someelement ID是1234我想得到一张如下图所示的地图: {"hello": "world", "name": "a name", "status": "new"}
。我将如何做到这一点?我知道XmlPath中有一个getMap方法,但我无法弄清楚我将不得不使用哪种表达式。
如果无法将属性作为地图获取,我将满足于获取键值列表和值列表。再次,我不知道我必须使用哪种表达方式。我试过类似的东西:
xmlPath.getList("**.find {[email protected] = '1234'}[email protected]", String.class)
但是,它没有找到任何东西。
我刚刚注意到为什么后面的列表方法不起作用:我使用了一个等号而不是双.. – rkcpi