lqxue

          常用鏈接

          統計

          book

          tools

          最新評論

          如何在JUnit測試過程中,用Mock替換springContext中的Bean


                
                  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();//清除已經實例了的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(
          ""));




          posted on 2007-05-22 13:44 lqx 閱讀(1584) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發表評論。


          網站導航:
          博客園   IT新聞   Chat2DB   C++博客   博問  
           
          主站蜘蛛池模板: 通河县| 定南县| 新田县| 肇源县| 遵化市| 二连浩特市| 侯马市| 连城县| 西乌珠穆沁旗| 武胜县| 油尖旺区| 碌曲县| 富民县| 吴江市| 翼城县| 阿勒泰市| 白银市| 马关县| 肥东县| 五峰| 英德市| 奇台县| 平顶山市| 固阳县| 改则县| 龙海市| 葵青区| 武城县| 定安县| 仲巴县| 崇礼县| 宜章县| 新龙县| 珠海市| 永善县| 西峡县| 潢川县| 荔浦县| 夏津县| 萝北县| 霍邱县|