我的项目中有很多用 JUnit 和 TestNG 编写的单元测试。构建过程基于带有surefire插件的maven。
当至少一个单元测试花费太多秒时,是否有任何方法/插件使 Maven 构建失败?我知道有一些插件在 TeamCity、Jenkins 中构建失败,但这“太远了”。
在我的项目中,我只想进行快速测试以使单元测试过程有效。我可以改进我的旧测试,但我需要保护未来的承诺
如果你所有的测试都扩展了一些基类,我认为你可以坚持@Rule
在那里,这将适用于所有@Test
在幼儿班。
e.g.
import org.junit.rules.Timeout;
public abstract class BaseTestConfiguration {
@Rule public Timeout testTimeout = new Timeout(60000); // 60k ms = 1 minute
}
public class ThingTests extends BaseTestConfiguration {
@Test
public void testThis() {
/*will fail if not done in 1 minute*/
}
@Test
public void testThat() {
/*will fail if not done in 1 minute*/
}
}
我们发现这是最简单的,而不是弄乱 AspectJ 或秘密配置指令。开发人员更有可能找出 Java 部分,而不是所有秘密的 XML 这样那样的东西。
你可以把@Before
@After
以及基类中的任意数量的其他 junit 指令。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)