ServiceClientFacade mock = createMock(ServiceClientImpl.class);
ApplicationContext ac = new ClassPathXmlApplicationContext("classpath:/applicationContext.xml");
AbstractRefreshableApplicationContext acc =(AbstractRefreshableApplicationContext)ac;
DefaultListableBeanFactory bf = (DefaultListableBeanFactory)acc.getBeanFactory();//get the beanFactory
bf.destroySingletons();//清除已經(jīng)實(shí)例了的singleton bean
RootBeanDefinition rbd = new RootBeanDefinition(mock.getClass());
bf.registerBeanDefinition("serviceClient", rbd); //注冊mock bean
ServiceClientFacade m = (ServiceClientFacade)ac.getBean("serviceClient");//get mock bean
//下邊是一些測試代碼,供參考
OpportunityFacade oppFacade = (OpportunityFacade)ac.getBean("oppFacade");
oppFacade.saveQuote(null,null);
System.out.println(m.closeNspProcess(""));