zoukankan      html  css  js  c++  java
  • 【转】SpringTest框架JUnit单元测试用例获取ApplicationContext实例的方法

    转自:http://www.coderli.com/junit-spring-test-applicationcontext

    JUnit单元测试用例中使用Spring框架,直接方式如下。

    @RunWith(SpringJUnit4ClassRunner.class)
    @ContextConfiguration(locations = { "/spring/applicationContext.xml" })
    public class SpringTest {}

    想要获取ApplicationContext实例。可以添加了对ApplicationContext的注入

    RunWith(SpringJUnit4ClassRunner.class)
    @ContextConfiguration(locations = { "/spring/applicationContext.xml" })
    public class SpringTest {
     
    @Autowired
    protected ApplicationContext ctx;

    Spring中早已直接提供了更加方便使用的基类:AbstractJUnit4SpringContextTests

    @ContextConfiguration(locations = { "/spring/applicationContext.xml" })
    public class SpringTest extends AbstractJUnit4SpringContextTests {
     
    public <T> T getBean(Class<T> type) {
    return applicationContext.getBean(type);
    }
     
    public Object getBean(String beanName) {
    return applicationContext.getBean(beanName);
    }
     
    protected ApplicationContext getContext() {
    return applicationContext;
    }
     
    }

    本人补充:

    若在静态类中需要引用只能使用如下方法:

    public class TPlatformInfoTest extends TestBase{
        
        private static MyHttpClient TPlatformInfoDispose;
        
        @BeforeClass
        public static void setUpBeforeClass(){
            System.out.println("***********here init first***************");
            TPlatformInfoDispose = new MyHttpClient("platform");
            DataSourceContextHolder.setDbType("ds2");
            ApplicationContext ctx = new ClassPathXmlApplicationContext("classpath:WEB-INF/rest-*.xml");
            pfm = ctx.getBean(TPlatformInfoMapper.class);
            dim = ctx.getBean(TDeviceInfoMapper.class);
        }
  • 相关阅读:
    求助:C#读文本文件(编码未知)的问题
    求助:字符的显示问题
    常用的xml文件操作
    关于旧表导入新表的数据冲突问题
    通过批处理管理安装windows服务
    windows服务,批处理安装
    ajax的请求的超时处理
    消息队列的使用
    c#程序执行cmd命令
    dynamic(翻译)
  • 原文地址:https://www.cnblogs.com/dorothychai/p/3968361.html
Copyright © 2011-2022 走看看