Maven2 junit超时注释不起作用

时间:2010-04-22 08:21:46

标签: java maven-2 junit

我们在maven2项目中进行了大量测试,并使用cruisecontrol构建。但是,构建会定期挂起,因为测试的注释带有超时

@Test(timeout = 5000)

被忽略。 我尝试在本地运行maven,重现超时被忽略的事实。

有没有办法再次激活测试的超时?

我目前在使用cruisecontrol设置超时时使用了一种解决方法。但是,这仅仅意味着整个构建被取消,而不仅仅是应该失败的测试。

注: 似乎在maven 1中有一个属性来激活junit超时,这在maven 2中是缺失的。

1 个答案:

答案 0 :(得分:3)

尝试设置forkedProcessTimeoutInSecondsMaven Surefire Plugin参数:

  

在一定秒数后终止分叉测试过程。如果设置为0,则永远等待该过程,永远不会超时

这似乎相当于Maven 1中的maven.junit.timeout test property,并且会在Maven级别“激活”超时(与注释不同)。