我使用Java 8,Maven,(Spring,Mockito),JUnit。
想法是知道是否可以使用测试构建我的应用程序(不跳过而不是忽略)。并设置一些不是强制性的。
也许有一个注释,如" @ FailureWarningOnly"在JUnit或其他地方?
要求:
答案 0 :(得分:2)
我个人并不喜欢做一些测试必须成功,而其他测试可能。
这是一扇敞开的门,让你的考试更加脆弱,不那么有用,可能会给你带来不良习惯
在大多数情况下,您可以使用配置文件或改进测试设置以使其行为可重现。
在极少数情况下,如果不可能,您可以假设是否不正确意味着应忽略测试的下一个陈述。
您可以手动创建它或使用测试框架的功能。
JUnit(4和5)提供Assumptions
即:
支持条件测试的实用程序方法的集合 基于假设的执行。与失败直接对比 断言,失败的假设不会导致测试失败; 相反,失败的假设会导致测试中止。
看起来像是:
@Test
public void foo(){
Assume.assumeTrue(shouldFailTestInThisCase(...));
// my assertions
Assert.assertEquals(...);
Assert.assertEquals(...);
}