可以测试对象 assertEquals(a,b)
以及 assertTrue(a.equals(b))
或者 assertTrue(a==b)
(对于基本体)。当然在这种情况下 assertEquals(a,b)
是唯一可能的变体。它是空安全的,并且在测试错误的情况下提供更多的信息(您得到的是确切的错误,而不是true或false)。
我还有一个问题。
当我们只有布尔值要测试时,情况会怎样? assertEquals(true, a)
以及 assertTrue(a)
有什么区别?
1条答案
按热度按时间s5a0g9ez1#
assertEquals(a, b)
以及assertTrue(a.equals(b))
不一样,因为如果两者都为null,前者将返回true,而后者将抛出null指针异常。惯用的写作方式
assertTrue(a == b)
是assertSame(a, b)
,如果a
以及b
是参考资料。对于基本体,使用assertEquals
.assertEquals(true, a)
以及assertTrue(a)
语义相同。只是风格的问题。前者会被许多人认为是糟糕的风格,这是一样的。