使用Groovy声明文档中的特定xml标记

时间:2018-08-03 11:56:06

标签: xml groovy assert

我想创建一个Groovy脚本,该脚本将断言文档或xml文件是否包含还包含特定值的标记。我想我可以这样定义文件:

String fileContents = new File('/path/to/file').getText('UTF-8')

但是我很难定义断言。可以说,我要检查的这个xml文件应包含一个名为<ApplicationID>且值为12345的标记。如何验证特定文件中包含<ApplicationID>12345</ApplicationID>

1 个答案:

答案 0 :(得分:2)

您可以将文件视为原始文本,如下所示:

assert new File('somefile').text.contains('<ApplicationID>12345</ApplicationID>')

或者,解析XML并在XML中为要检查的数据指定位置。

Given:
    new File("somefile.xml").text = 
     '<someXml><someTag><ApplicationID>12345</ApplicationID></someTag></someXml>'

Then:
    assert new XmlSlurper()
     .parseText(new File("somefile.xml").text)
     ."someTag"."ApplicationID".text() == "12345"