使用RecursiveElementNameAndTextQualifier比较XML与XML单元

时间:2014-05-19 23:34:53

标签: java xmlunit

我尝试使用XML Unit与RecursiveElementNameAndTextQualifier比较两个xml结构。

我的程序和XML在下面。

String control = "<root> "+ 
  "<ent> "+ 
       "<value> "+ 
        " <int>1</int>  "+ 
       "</value> "+ 
       "<value> "+ 
       " <int>2</int>"+   
       "</value> "+ 
  "</ent>  "+ 
 " <ent> "+ 
       "<value> "+ 
       "  <int>3</int>"+   
      " </value> "+ 
      " <value> "+ 
      "   <int>4</int>  "+ 
      " </value> "+ 
 " </ent> "+ 
"</root>";

String test = "<root> "+ 
      "<ent> "+ 
           "<value> "+ 
            " <int>3</int>  "+ 
           "</value> "+ 
           "<value> "+ 
           " <int>4</int>"+   
           "</value> "+ 
      "</ent>  "+ 
     " <ent> "+ 
           "<value> "+ 
           "  <int>1</int>"+   
          " </value> "+ 
          " <value> "+ 
          "   <int>2</int>  "+ 
          " </value> "+ 
     " </ent> "+ 
    "</root>";

        Diff d = new Diff(control,test);
            d.overrideElementQualifier(new RecursiveElementNameAndTextQualifier());
System.out.println(d.similar());

我总是因为价值而变得虚伪。我需要设置哪些额外的值来比较这两个xml结构。

1 个答案:

答案 0 :(得分:1)

文档的问题是元素内容空白的差异,RecursiveElementNameAndTextQualifier不会忽略它。

如果你添加

XMLUnit.setIgnoreWhitespace(true);

在调用similar之前,它将返回true