`
阅读更多

一般情况下,我们的测试类是继承自抽象类AbstractDependencyInjectionSpringContextTests,需要注意的就是要重写方法getConfigLocation()。这样的测试类有个优点就是每个测试方法Spring容器都只对beans初始化一次。
        但是,有些情况下我们不想在单元测试的时候破坏数据库现场,这时候可以是测试类继承抽象类AbstractTransactionalSpringContextTests。使用这个抽象类的时候,一定要注意属性TransactionManager属性的注入,以及TransactionManager的DataSource属性的注入,否则测试类是不能够初始化的

 

public abstract class BaseTest extends AbstractDependencyInjectionSpringContextTests  {

	@Override
	protected String[] getConfigLocations() {
		
		String[] config = new String[]{
				"file:web/WEB-INF/spring.xml",
				"file:web/WEB-INF/spring-app.xml"
		};
		
		return config;
	}

	@Override
	protected void injectDependencies() throws Exception {
		this.setAutowireMode(AUTOWIRE_BY_NAME);
		super.injectDependencies();
	}
	
}

 

 

如果需要测试某个bean,我们可以继承上面的BaseTest类

 

public class TestNeiDAOImpl extends BaseTest{
	
	Log log = Log.getLog(TestNeiDAOImpl.class);
	NeiDAO neiDAO ;
	UserInfo userInfo;

	public void testAddUserInfo(){
		userInfo.setAge(20);
		userInfo.setRegisterTime(new Date());
		userInfo.setUpdateTime(new Date());
		neiDAO.addUserCore(userInfo);
	}
	

	//通过setter方法自动从context里注入neiDAO bean,而不用显示调用
	public void setNeiDAO(NeiDAO neiDAO){
		this.neiDAO = neiDAO;
	}

}
 

我们不需要手动的从applicationContext容器中找某个bean,spring自动通过sett方法注人我们需要的bean。需要注意的是,如果我们有多个 bean的类型一样,这样就需要我们手动获取

 

public void onSetUp() {
       neiDAO= (NeiDAO) applicationContext.getBean("neiDAO");
   
}

 

如果需要使用spring的单元测试,我们还需要导入spring test的jar包。

 

 

分享到:
评论

相关推荐

    spring MVC junit 单元测试(controller)

    在测试类上使用`@RunWith(SpringRunner.class)`注解启用Spring测试支持,并使用`@ContextConfiguration`指定Spring配置文件的位置。 2. **创建MockMVC对象**:使用`MockMvcBuilders.standaloneSetup()`或`...

    spring整合单元测试Junit开发包

    3. **TestNG集成**: 虽然Junit是默认的测试框架,但`spring-test`也支持TestNG,一个功能更丰富的测试框架,提供了更多高级特性,如并行测试执行。 4. **Web应用程序测试**: Spring Test模块包含`MockMvc`类,用于...

    单元测试案例junit +spring mvc +springboot

    JUnit作为Java领域最流行的单元测试框架,与Spring MVC和Spring Boot的集成使得开发者能够更高效地进行测试驱动开发(TDD)或行为驱动开发(BDD)。下面将详细介绍这个主题中的相关知识点。 1. JUnit JUnit是一个...

    Spring的MOVE进行Junit单元测试

    在Spring框架中,进行Junit单元测试是软件开发过程中的重要环节,有助于确保代码的健壮性和可维护性。在本篇文章中,我们将探讨如何利用Spring的MOVE(Model-View-Controller)架构以及JUnit库来执行单元测试。首先...

    spring-Test,Junit4 jar,和测试代码

    总结来说,Spring Test和JUnit4的组合为Java开发者提供了一套强大的测试工具,可以方便地对Spring应用进行单元测试和集成测试。通过合理的注解使用和测试设计,我们可以确保代码的质量和系统的稳定性。在实际项目...

    通过spring管理的web工程的junit单元测试方法四

    在Spring框架中,进行Web工程的JUnit单元测试是软件开发中的关键步骤,它能确保代码的质量和可维护性。本文将深入探讨如何利用Spring管理的Web工程进行单元测试,以及如何借助工具提升测试效率。 首先,理解“通过...

    Spring Boot 单元测试和集成测试实现详解

    本文详细介绍了 Spring Boot 中的单元测试和集成测试的实现细节,包括使用 JUnit 和 Hamcrest 框架来进行单元测试,以及使用@SpringBootTest 注解来标记集成测试。这对于学习 Spring Boot 和测试有重要参考价值。

    spring3 + mybatis3 + junit4 可运行项目示例

    这个项目的核心是利用Spring作为应用的ioc(Inversion of Control,控制反转)和aop(Aspect Oriented Programming,面向切面编程)容器,MyBatis作为持久层框架,以及JUnit4用于进行单元测试和集成测试。...

    27. Spring Boot Junit单元测试【从零开始学Spring Boot】

    Spring Boot Junit单元测试【从零开始学Spring Boot】"的主题,深入探讨Spring Boot中Junit单元测试的使用方法和最佳实践。 首先,我们要了解什么是单元测试。单元测试是一种针对软件中的最小可测试单元(如方法)...

    spring-dm junit

    1. **配置测试环境**:设置一个包含OSGi容器(如 Felix 或 Equinox)的测试环境,并集成JUnit支持。这通常通过Maven或Gradle插件完成,例如Apache Maven Bundle Plugin和Bndtools。 2. **创建测试类**:为每个需要...

    spring+Junit4单元测试

    通过Spring集成单元测试,以后测试service层内容时,就不用getBean()来获得Service层对象了

    Spring3单元测试和集成测试

    在Spring框架中,单元测试和集成测试是软件开发过程中不可或缺的部分。它们确保代码的质量和功能的正确性。本文将深入探讨Spring3中的单元测试和集成测试,并提供相关的实践指导。 ### 单元测试 单元测试是指针对...

    spring junit

    描述中的链接指向了一篇名为“Spring 2.5+Junit4的单元测试”的博客文章,虽然具体内容未给出,但可以推断这篇文章可能讲述了如何在Spring 2.5版本中集成Junit4进行单元测试的实践和技巧。 标签“源码”意味着我们...

    spring4+JUnit简单测试

    总的来说,Spring4提供了丰富的测试支持,结合JUnit能够实现从单元测试到集成测试的全面覆盖。这不仅提高了代码质量,也加速了问题定位和修复的过程。在实际开发中,应充分利用这些工具,确保软件的健壮性和稳定性。...

    SSM中进行单元测试Junit4+spring-test所需jar包

    在SSM环境中,使用Junit4和spring-test库进行单元测试是标准做法。下面将详细解释如何使用这两个库以及所需的jar包。 Junit4是Java领域广泛使用的单元测试框架,它提供了一套丰富的注解,使得编写测试用例变得更加...

    spring2 junit3

    标题“spring2 junit3”指的是在Spring框架的第二个主要版本中使用JUnit3进行单元测试的相关内容。这篇博文可能探讨了如何在Spring 2.x时代利用JUnit3进行测试驱动开发(TDD),因为JUnit3是当时广泛使用的Java单元...

    最简单的含单元测试的spring boot+activiti集成demo

    【标题】"最简单的含单元测试的spring boot+activiti集成demo" 描述了一种将流行的Spring Boot框架与流程管理工具Activiti结合使用的实践案例。这个集成演示项目旨在帮助开发者快速理解和实现基于Spring Boot的...

    junit单元测试

    Spring集成junit4 Spring框架提供了对junit4单元测试的集成支持。我们可以使用Spring的测试框架来编写单元测试,以确保Spring应用程序的正确性和可靠性。 junit单元测试是Java应用程序测试的重要工具。它提供了一...

    day38 20-Spring与Junit整合

    在Spring测试中,我们通常会结合Spring的bean和业务逻辑,编写相应的断言来确保代码行为正确。 8. **测试覆盖率(Telemetry)**:为了评估测试的质量,开发者常常会关注测试覆盖率,例如使用JaCoCo或Cobertura等工具...

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

    为了进行集成测试,我们需要创建一个测试类,该类通常会继承Spring的`AbstractJUnit4SpringContextTests`或`SpringRunner`(如果使用JUnit4)或`SpringExtension`(如果使用JUnit5)。在这个测试类中,我们可以使用`...

Global site tag (gtag.js) - Google Analytics