junit jar包中Assert的assertTrue方法和assertEquals方法区别

单元测试中遇到的问题:

1. assertEquals(true, check.isSatisfied(data, "4", null, null));

2. Assert.assertTrue(check.isSatisfied(data, "4", null, null));

这两个语句在被测试类没有逻辑错误的情况下,都是可以正确运行的;但是如果被测类有逻辑错误或其他问题,不能正确返回true时:

1.第一条语句可以很好的提示

"expected:<" + expectedString + "> but was:<" + actualString + ">"

2.但是第二条语句却只给出AssertionFailedError:null

让人容易误解为写的单元测试用例的对象里面有空值,但是却没有找到空值的地方;实际上是被测试类有问题。

建议做好使用第一条语句做单元测试,junit4新出来assertThat方法,也可以尝试使用。