gpt4 book ai didi

java - maven - 当单元测试时间太长时构建失败

转载 作者:太空狗 更新时间:2023-10-29 22:53:25 26 4
gpt4 key购买 nike

我的项目中有很多单元测试,用 JUnit 和 TestNG 编写。构建过程基于带有surefire插件的maven。

当至少一个单元测试花费太多秒时,是否有任何方法/插件可以使 Maven 构建失败?我知道在 TeamCity、Jenkins 中有一些插件无法构建,但这“太过分了”。

在我的项目中,我只想进行快速测试以使单元测试过程有效。我可以改进我的旧测试,但我需要保护 future 的 promise

最佳答案

如果您的所有测试都扩展了一些基类,我认为您可以在其中粘贴 @Rule,这将应用于子类中的所有 @Test

例如

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 或 secret 配置指令。开发人员更有可能找出 Java 部分,而不是所有 secret 的 XML 这个那个。您也可以在基类中放置 @Before @After 和任意数量的其他 junit 指令。

关于java - maven - 当单元测试时间太长时构建失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9312190/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com