我正在尝试加速我们环境中的集成测试.我们所有的课程都是自动装配的.在我们的applicationContext.xml文件中,我们定义了以下内容:
<context:annotation-config/>
<context:component-scan base-package="com.mycompany.framework"/>
<context:component-scan base-package="com.mycompany.service"/>
...additional directories
Run Code Online (Sandbox Code Playgroud)
我注意到Spring正在扫描上面指出的所有目录,然后迭代每个bean并缓存每个bean的属性.(我从春天开始查看DEBUG消息)
因此,以下测试大约需要14秒才能运行:
public class MyTest extends BaseSpringTest {
@Test
def void myTest(){
println "test"
}
}
Run Code Online (Sandbox Code Playgroud)
有没有办法延迟加载配置?我尝试添加default-lazy-init="true"但是没有用.
理想情况下,只实例化测试所需的bean.
提前致谢.
更新:我之前应该说过,我不想为每个测试都有一个上下文文件.我也不认为只有测试的一个上下文文件才有效.(此测试上下文文件最终会包含所有内容)