使用 Groovy 从文档中声明特定的 xml 标签
Asserting specific xml tag from a document with Groovy
我想创建一个 groovy 脚本来断言文档或 xml 文件是否包含也包含特定值的标记。我想我可以这样定义文件:
String fileContents = new File('/path/to/file').getText('UTF-8')
但是我很难定义断言。假设我要检查的这个 xml 文件应该包含一个名为 <ApplicationID>
且值为 12345
的标签。如何验证 <ApplicationID>12345</ApplicationID>
是否包含在特定文件中?
您可以将文件视为原始文本,如:
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"
我想创建一个 groovy 脚本来断言文档或 xml 文件是否包含也包含特定值的标记。我想我可以这样定义文件:
String fileContents = new File('/path/to/file').getText('UTF-8')
但是我很难定义断言。假设我要检查的这个 xml 文件应该包含一个名为 <ApplicationID>
且值为 12345
的标签。如何验证 <ApplicationID>12345</ApplicationID>
是否包含在特定文件中?
您可以将文件视为原始文本,如:
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"