使用AssertJ库时,我很想能够断言所有org.assertj.core.api.Assert
对象都对它们进行了实际断言。也就是说,如下所示的测试应该失败,因为它显然是错误的:
import static org.assertj.core.api.Assertions.assertThat;
// ... elided ...
@Test
public void unfinishedAssertion() {
assertThat("str");
}
是否可以使用AssertJ进行配置,或者在JUnit @After
方法中进行声明?
我唯一的想法是提供一个像assertThat
这样的静态工厂,该工厂返回一个代理,将所有方法调用委托给基础的Assert,并使用After方法断言该代理至少具有一个方法的调用。并非Assert#as
或Assert#withFailMessage
等,但这似乎很麻烦且不必要,因为该库本身应提供此功能。
答案 0 :(得分:0)
目前,最好的方法是使用findbug / spotbug来警告您这种滥用,有关详细信息,请参见https://assertj.github.io/doc/#assertj-core-incorrect-usage。
希望有帮助。