我写信是为了尝试发起一些关于 Spring 单元测试,特别是事务单元测试的讨论。
我们目前在各种类中有大约 441 个测试,注释如下:
@RunWith(SpringJUnit4ClassRunner.class)
@TransactionConfiguration
@ContextConfiguration(locations={"/context/ServiceTest-context.xml"}, inheritLocations=false)
public class ServiceTests extends AbstractTransactionalJUnit4SpringContextTests {
@Test
public void testSomething() {}
@Test
public void testSomethingElse() {}
}
我们的每个测试类都有自己的测试上下文。
我们面临一个问题,当我们运行单独的测试类或单独的包时,测试运行良好。
但是,当我们想通过使用 maven 或类似的东西(例如 Hudson 集成)来扩展它以运行我们的所有测试(当前 > 400)时。
mvn test
我们到达一个点,然后开始遇到 Java GC Limit exceeded 错误。
现在我觉得这取决于我们的测试计划设计,而不是我们需要提高任何内存限制或关闭警告。
任何人都可以分享他们的经验以及他们解决类似问题的方式吗?
艾格西