在JUnit测试的@Before方法中使用assert语句?

usa*_*san 10 java junit unit-testing annotations

我应该assertEquals@BeforeJUnit测试的方法中使用断言语句(,...)吗?

如果断言失败,所有测试都将失败,因此它的行为正是我想要的,但我不相信这是一个好主意,因为@Before注释方法不是测试.

Bri*_*new 9

听起来假设机制更合适.

一组方法,用于说明关于测试有意义的条件的假设.失败的假设并不意味着代码被破坏,而是测试没有提供有用的信息.默认的JUnit运行器将失败假设的测试视为忽略.自定义跑步者可能表现不同.

这似乎更直观,因为您在实际执行每个测试之前测试了测试前提条件.请注意上面提到的自定义运行器执行不同的参考,并且您可以修改运行器以使其失败而不是默默地忽略该测试.