我正在使用unitils进行测试。我在故障安全测试报告中看到了90多个spring上下文刷新消息。我需要知道有多少时间来初始化这些弹簧上下文。 Unitils没有正确的日志记录,因此无法使用框架日志跟踪它。
@SpringApplicationContext
位于测试类之上,因此无法在我自己的测试类中使用logger
编写建议或知觉类或拦截器无济于事,因为所有这些类都必须在spring xml中注册,并且那些在spring xml中注册的bean只有在初始化上下文后才会加载
编写应用程序监听器类时,我们只能捕获ContextRefreshedEvent
,即加载的上下文未初始化时。
无法捕获ContextStartedEvent
,因为它是在使用start()
上的ConfigurableApplicationContext interface
方法启动ApplicationContext时发布的。而unitils动态创建新ClassPathXmlApplicationContext(..,..);
以创建弹簧上下文(class:org.unitils.spring.util.ClassPathXmlApplicationContextFactory)
如何计算弹簧上下文初始化时间?
答案 0 :(得分:0)
简单的log4j记录器怎么样?记录Spring信息日志时,您可以看到ContexLoader初始化时间。
17:25:48 INFO - ContextLoader - Root WebApplicationContext:初始化
17:25:53 INFO - ContextLoader - Root WebApplicationContext:初始化在5325 ms完成