使用 Groovy 从文本文件断言 XML 块

Assert XML block from a text file with Groovy

我有一个 xml 文件,其中包含几个块,它们具有相同的父名称,但包含具有不同值的不同标签:

<Block>
   <tag1>123</tag1>
   <tag2>456</tag2>
   <tag3>789</tag3>
</Block>
<Block>
   <tag1>321</tag1>
   <tag2>654</tag2>
   <tag3>987</tag3>
</Block>
<Block>
   <tag1>111</tag1>
   <tag2>444</tag2>
   <tag3>777</tag3>
</Block>
<Block>
   <tag1>22</tag1>
   <tag2>55</tag2>
   <tag3>88</tag3>
</Block>

此文件是根据一些输入在特定请求后生成的,每次都应包含特定值。

我想创建一个 groovy 脚本来自动验证每个单独块的标签中的值,但是由于所有这些块都具有相同的名称,而且我在这方面相对较新,所以我无法管理去做:(你能帮我吗?

XML 的基本操作可能如下所示

File inputFile = new File("path")
def xml = new XmlParser(false, false).parse(inputFile)

xml.Block.each{
    int sum = 0
    sum += it.tag1.toInt()
    sum += it.tag2.toInt()
    sum += it.tag3.toInt()
}

您可以根据总和或任何您需要的东西来验证它