`

SpringTest框架JUnit单元测试用例获取ApplicationContext实例的方法

 
阅读更多

 

 

原文链接:http://www.coderli.com/junit-spring-test-applicationcontext/

JUnit单元测试用例中使用Spring框架,之前我的使用方式很直接。

/**
 * 用于需要用到Spring的测试用例基类
 * 
 * @author lihzh
 * @alia OneCoder
 * @blog http://www.coderli.com
 */
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = { "/spring/applicationContext.xml" })
public class SpringTest {}

在测试的过程中,有人提到,想要获取ApplicationContext实例。于是,添加了对ApplicationContext的注入

/**
 * 用于需要用到Spring的测试用例基类
 * 
 * @author lihzh
 * @alia OneCoder
 * @blog http://www.coderli.com
 */
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = { "/spring/applicationContext.xml" })
public class SpringTest {

@Autowired
protected ApplicationContext ctx;
其实,Spring中早已直接提供了更加方便使用的基类:AbstractJUnit4SpringContextTests。修改代码如下:
/**
 * 用于需要用到Spring的测试用例基类
 * 
 * @author lihzh
 * @alia OneCoder
 * @blog http://www.coderli.com
 */
@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;
}

}

代码也简洁多了。

现在想想,你想要的常用功能,一般人家都能想到了。做之前,不妨先查查有没有现成可用的工具吧:)

 

分享到:
评论

相关推荐

    spring整合单元测试Junit开发包

    Junit是Java中最常用的单元测试框架,它提供了一套简单易用的API来编写和执行测试用例。 在Spring框架中,`spring-test`模块是专门为测试而设计的,它提供了对Spring应用程序上下文的支持,使得在测试环境中可以...

    spring mvc的简单单元测试

    3. **Spring Test**:Spring 提供了自己的测试模块,包含`@RunWith(SpringRunner.class)`注解,它可以将JUnit测试与Spring环境结合,自动加载ApplicationContext,使得我们可以使用依赖注入来测试bean。 4. **@...

    Spring+JUnit4 +Ant测试报告

    此外,Spring的TestContext框架可以进一步简化测试环境的配置,自动加载测试所需的ApplicationContext。 总之,Spring+JUnit4+Ant的组合为Java开发提供了强大的单元测试能力。通过合理配置和使用这些工具,开发者...

    Spring+SpringMVC+Mybatis 基础环境搭建工程(带测试用例)

    8. **测试用例**:工程内可能包含JUnit测试类,对Controller、Service或DAO层进行单元测试,以确保代码的功能正确无误。 通过这个基础环境搭建工程,开发者可以快速理解SSM框架的集成方式,学习如何配置和使用这些...

    spring-text-3.2.8和junit4.10

    总的来说,"spring-test-3.2.8"和"junit-4.10"是Java开发中的重要测试工具,它们的结合使用能够帮助开发者有效地进行单元测试和集成测试,提高代码质量,降低维护成本。对于任何涉及Spring框架的项目来说,理解和...

    spring3 junit 测试 + word

    - **@Test**:标记测试方法,表示该方法是一个单元测试,JUnit会自动运行这个方法。 - **Assertions**:JUnit提供了多种断言方法,如assertEquals()、assertTrue()等,用于验证方法的输出是否符合预期。 - **@...

    struts2_spring3.0_Junit4.7_Maven2.2.1_整合运行说明_培训.pdf )

    通过JUnit,开发者可以方便地编写针对Struts2 Action和Spring Service层的单元测试,从而确保代码的质量。 #### Maven2.2.1 Maven是一个项目管理和理解工具,它提供了一套标准的构建生命周期,能够自动化构建过程中...

    spring 5.2.9 07 源码分析-spring的bean工厂准备工作 测试用例

    在Spring框架中,我们通常使用`ApplicationContext`来创建Bean工厂的测试环境,因为它不仅包含了Bean工厂的功能,还提供了获取所有Bean的能力以及事件发布等功能。编写测试用例时,可以通过`@Test`注解配合`@...

    Spring+hibernate 单元测试

    Spring 2.5 的 TestContext 测试框架为开发人员提供了一种更为简洁、灵活的方式来编写和组织单元测试。通过使用注解来配置测试逻辑,可以极大地提高测试代码的可读性和可维护性。同时,结合 Hibernate 进行数据库...

    junit学习(十)——Springpring与Hibernate整合的单元测试

    在本篇《junit学习(十)——Spring与Hibernate整合的单元测试》中,我们将探讨如何在Java开发中,利用JUnit进行Spring和Hibernate框架的集成测试。单元测试是软件开发中的重要环节,它能帮助开发者确保代码的质量和...

    单元测试junit

    这段代码中,`setUp`方法用于初始化测试环境,加载Spring配置文件并获取LoginAction实例。`testLoginCorrect`和`testLoginIncorrect`分别测试了正确和错误的登录情况,通过调用`handleForm`方法并使用`assertEquals`...

    Spring+Hibernate 加入JUnit Jar包

    4. **JUnit测试**:在你的测试类上添加`@RunWith(SpringRunner.class)`注解,表明这个测试类将由Spring Test Runner运行。然后,使用`@SpringBootTest`或`@ContextConfiguration`注解指定Spring配置文件的位置。你...

    详细讲解在Spring中进行集成测试.doc

    在单元测试中,我们通常不启动ApplicationContext,而是直接创建并初始化POJO对象,然后使用JUnit或其他测试框架进行测试。这样可以保证测试的速度和独立性。 然而,集成测试需要将整个系统的部分或全部组件组合...

    Junit测试时所需要使用到的jar包

    在Java开发中,单元测试是确保代码质量的重要环节,而JUnit则是Java领域最常用的单元测试框架之一。要进行JUnit测试,我们需要引入相应的依赖库,这些依赖通常以JAR(Java Archive)文件的形式存在。在提供的文件...

    spring+hibernate整合列子,用junit测试增删改查都实现(MySQL包含表)

    本项目"spring+hibernate整合列子"是一个实例教程,展示了如何将这两个框架结合在一起,用于实现对MySQL数据库的CRUD(创建、读取、更新、删除)操作,并且通过JUnit进行单元测试,确保功能的正确性。 首先,Spring...

    Spring-Study-master JAVA学习实例

    Study-master JAVA学习实例"是一个全面了解和掌握Spring框架的实践平台,通过这个项目,开发者不仅可以学习到Spring的基本概念和事务管理,还能了解到如何优化项目结构,提高代码质量,以及如何编写测试用例来验证...

    spring第二次课测试

    7. **单元测试和集成测试**:在Spring框架中,我们可以使用JUnit和Mockito进行单元测试,使用Spring Test和Spring Boot Test进行集成测试。我们将讨论如何编写测试用例,以及如何利用测试驱动开发(TDD)来提高代码...

    junit+hibernate3.2+spring2.5工程

    1. Junit框架:Junit是Java编程语言中用于单元测试的标准库,它简化了编写和运行测试用例的过程。通过注解(如@Test)和断言(如assertEquals)等,开发者能够快速验证代码片段的功能。在本工程中,我们可以看到如何...

    Springboot-junit项目源码

    - **单元测试**:JUnit是Java开发中的标准单元测试框架,允许开发者编写测试用例来验证代码的正确性。 - **测试注解**:如`@Test`、`@Before`、`@After`等,它们分别用于定义测试方法、测试前的准备工作和测试后的...

    Spring 入门案例

    在Spring项目中,JUnit与Spring Test框架结合使用,可以方便地进行依赖注入的测试,确保每个组件都能正常工作。在描述中提到的压缩包可能包含了一些使用JUnit编写的测试用例,这些用例可以帮助我们验证Spring配置的...

Global site tag (gtag.js) - Google Analytics