在单元测试中比较scala.xml.Elem对象
发布时间:2020-12-16 09:14:37 所属栏目:安全 来源:网络整理
导读:我有两个 scala.xml.Elem对象(实际,预期).我正在使用JUnit 4,但也包括 XMLUnit 1.3. 有没有比较容易的方法来比较两个对象的等同性,忽略属性顺序和微不足道的空格在XML? 我试过XMLUnit.assertXMLEqual(),但它抱怨类型是scala.xml.Elem. 我知道我可以使用equa
我有两个
scala.xml.Elem对象(实际,预期).我正在使用JUnit 4,但也包括
XMLUnit 1.3.
有没有比较容易的方法来比较两个对象的等同性,忽略属性顺序和微不足道的空格在XML? 我试过XMLUnit.assertXMLEqual(),但它抱怨类型是scala.xml.Elem. 我知道我可以使用equals或==,但是我希望在不平等的情况下使断言打印两个值.如果我使用assertTrue(actual.equals(expected)),并且它们不相等,则唯一的输出将是“断言失败”. 解决方法
使用允许传递自定义消息的assertTrue版本
public static void assertTrue(java.lang.String message,boolean condition) 和(例如)diff来生成具有不相等的下降和节点的字符串 scala> val xml1 = <person><name>john</name><lastname>smith</lastname></person> xml1: scala.xml.Elem = <person><name>john</name><lastname>smith</lastname></person> scala> val xml2 = <person><name>jane</name><lastname>smith</lastname></person> xml2: scala.xml.Elem = <person><name>jane</name><lastname>smith</lastname></person> scala> assert(xml1 == xml2,xml1.child diff xml2.child mkString(",")) java.lang.AssertionError: assertion failed: <name>john</name> at scala.Predef$.assert(Predef.scala:91) at .<init>(<console>:8) at .<clinit>(<console>) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |