我在TDD环境中工作并且我使用了很多其他方法,例如assert equals等.我有一个类,我有超过40个测试用例,它们都是assertTrue.这可以接受吗?
我想问一个风格,这是正确的吗?
有什么建议?
如果您认为这个问题不合适,请让我知道我会删除它.
编辑:
assertTrue(targetSpecifiers.size() == 2);
assertTrue(targetSpecifiers.get(0).getPlacementId().compareTo(new BigInteger("1")) ==0);
assertTrue(targetSpecifiers.get(1).getPlacementId().compareTo(new BigInteger("2")) ==0);
解决方法:
使用其他断言的主要好处是它们可以更好地传达意图,并且可以在发生故障时提供更有意义的默认消息.
例如
如果你写了assertEquals(2,x)如果x实际上是1那么失败消息将是:
java.lang.AssertionError: expected:<2> but was:<1>
这比你编写assertTrue(x == 2)更有帮助,你看到的只是AssertionError和堆栈跟踪.
当您使用TDD时,这一点更为重要,因为当您首先编写失败的测试时,您希望确信测试失败的原因是您期望它并且没有发生意外行为.
标签:java,unit-testing,junit
来源: https://codeday.me/bug/20190712/1444178.html