我们在使用Spock的600个常规文件中进行了大量测试。 所有测试类都从AbstractSpecification.groovy扩展而来,它有很多注入的Service-Classes以及许多使用这些类的帮助器方法(Spring,Autowired)。很多spock测试会导致编译时间很长
我们使用Eclipse,和每一个变化的抽象类,当然会导致重新编译(大厦工作区,调用Maven项目生成器)。但在开发过程中,这种重新编译变得越来越慢。现在有600个测试,我们必须等待。在eclipse完成之前14分钟,使测试项目几乎不可用。
我认为,有很多与抽象类测试是没有什么不寻常的,所以我想知道如果使用斯波克人遇到同样的问题。我改变了Groovy版本,插件版本,但没有任何帮助。只减少测试类的数量。
任何想法?提前致谢!
技术数据: - Eclipse的开普勒SR2,Groovy的Eclipse的+编译器插件2.9.1,Groovy的2.0.7,斯波克版本0.7 Groovy的2.0
你有没有做过任何分析,看看是什么导致减速(除了大量的测试)?此外,这个性能问题只存在于IDE中,还是在正常构建(ant,maven,gradle等)过程中发生? – cjstehno
Maven构建在40秒内完美运行(mvn clean install -DskipTests)..它还使用Groovy-Eclipse编译器编译Java和Groovy文件。所以它与Eclipse-Groovy-Plugin有关,对吧? jvisualvm在冻结期间通过类进行搜索时分配了大量的资源。 – Markes
当你不跳过测试时,Maven构建需要多长时间? – cjstehno