`

使用Junit对Spring进行单元测试实战小结

阅读更多

Demo代码:

 

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = "classpath*:/META-INF/spring/all-beans.xml")
public class SomeRemoteServiceTest {
    @Resource(name = "someRemoteService")
    RemoteService service;

    @Test
    public void testService() {
        Param param = new Param();
        param.setCityId(330100);
        System.out.println(JsonUtil.toJson(service.doSomething(param)));
    }
}

 几个关键点:

  1. 使用 @RunWith(SpringJUnit4ClassRunner.class)
  2. 使用@ContextConfiguration引入所有使用到bean的配置文件
  3. 使用@Resouce注入程序定义的bean, 一般它都是应用中定义的某个服务类,比如带有@Service("someRemoteService")注解的类
  4. Spring中常用的注解所代表的含义,参考: http://www.cnblogs.com/rhythmK/p/3412549.html

对于单元测试,测试工程应该会是整个工程项目的其中一个子工程,而这个子工程,应该是会对其他子工程有依赖. 如果是maven项目,要在pom.xml中定义对其他兄弟工程的依赖.

 

在实际项目里,一般单元测试的范围如下:

  1. Service实现类
  2. Dao实现类
  3. 各种工具类,一般是***Util.java
  4. 其它涉及功能相关的类

一个Spring项目的单元测试结构基本是这个样子.

本文出自"lijingshou"博客,转载请务必保留此出处http://lijingshou.iteye.com/blog/2269593

分享到:
评论

相关推荐

    junit单元测试及Mock应用,超详细的PPT实战应用

    总结来说,本文档提供的内容涵盖了单元测试的基本概念、Mock技术的运用、JUnit框架的详细讲解,以及Mockito、MockMVC和Mock.js等工具的使用。通过这些知识,开发者可以构建更健壮的测试体系,提升代码质量和软件工程...

    Junit实战第二版 中文完整版.pdf

    - **开源框架集成**:介绍了如何将JUnit与其他重要的开源框架和工具(如Spring、Hibernate等)进行集成,以便更高效地进行单元测试。 - **最佳实践**:结合了TDD(测试驱动开发)、BDD(行为驱动开发)、持续集成等...

    单元测试junit

    本文将深入探讨单元测试的概念,详解JUnit框架的基本原理,并通过一个具体的示例——使用JUnit对基于Spring MVC框架的LoginAction进行单元测试,来展示JUnit在实际项目中的应用。 #### 一、单元测试概述 单元测试...

    Spring.3.x企业应用开发实战(完整版).part2

    16.7.1 对LoginController进行单元测试 16.7.2 使用Spring Servlet API模拟对象 16.7.3 使用Spring RestTemplate测试 16.7.4 使用Selenium测试 16.8 小结 第17章 实战案例开发 17.1 论坛案例概述 17.1.1 论坛整体...

    Spring3.x企业应用开发实战(完整版) part1

    16.7.1 对LoginController进行单元测试 16.7.2 使用Spring Servlet API模拟对象 16.7.3 使用Spring RestTemplate测试 16.7.4 使用Selenium测试 16.8 小结 第17章 实战案例开发 17.1 论坛案例概述 17.1.1 论坛整体...

    spring-test

    在Java开发领域,Spring框架无疑是最为广泛使用的轻量级框架之一,而Spring Test则是Spring框架的重要组成部分,它为开发者提供了强大的单元测试和集成测试工具。本文将深入探讨Spring Test的核心概念、功能以及实际...

    Spring_JPA_Junit_Practice-:从其他来源获取的用于实践单元测试的Spring JPA项目(Junit)(适用于初学者)

    通过实践这个项目,你将了解到如何配置Spring Boot项目,如何使用Spring Data JPA进行数据库操作,以及如何编写JUnit测试来验证这些操作。这不仅有助于你理解Spring JPA和JUnit的基本用法,还能提高你的代码质量和...

    Springtest

    我们可以使用@RunWith(SpringJUnit4ClassRunner.class)注解来启动Spring上下文,并使用@Autowired注解注入需要的bean进行测试。 总结,"Springtest"项目为我们提供了一个实践Spring框架基础知识的平台,通过学习和...

    spring 练习小项目

    - **单元测试:** 使用JUnit和Mockito进行单元测试,确保代码的正确性。 此外,持续学习和理解Spring Boot、Spring Data JPA、Spring Security等Spring生态系统中的其他组件,将有助于提升项目的质量和效率。Spring...

    Junit 4.0 学习笔记

    《Junit 4.0 学习笔记》 ...总结,JUnit 4.0是Java开发者不可或缺的测试工具,其强大的功能和灵活性使得单元测试变得简单高效。通过深入学习和实践,我们可以更好地利用JUnit 4.0提升代码质量,确保软件的稳定性。

    2018最新Spring视频教程

    - Spring Boot 提供了对 JUnit 和 Mockito 测试框架的支持。 - 可以使用 `@RunWith(SpringRunner.class)` 和 `@SpringBootTest` 等注解进行集成测试。 7. **安全性和认证**: - Spring Security 可以很容易地与 ...

    spring_framework3

    此外,Spring Test和Mockito等工具可以帮助开发者创建Mock对象,进行隔离测试,确保测试的准确性和效率。 八、Maven与Gradle支持 Spring Framework 3时代,Maven和Gradle成为主流的构建工具,Spring提供了对这两种...

    spring-framework-reference

    7. **Spring Test**:提供了测试支持,包括JUnit和TestNG的集成,方便进行单元测试和集成测试。 四、实战应用 1. **Bean配置**:使用XML或Java配置定义bean,通过@Autowired注解实现依赖注入。 2. **AOP实践**:...

    java+springcloud实战商城项目.zip

    1. JUnit:单元测试框架,确保代码质量。 2. Mockito:模拟对象,隔离测试。 3. Jenkins:持续集成工具,自动化构建、测试和部署。 总结,这个实战项目涵盖了Java和SpringCloud的多种核心技术,以及微服务架构、...

    SSM三大框架整合详细总结(Spring+SpringMVC+MyBatis).pdf

    ### SSM三大框架整合详细总结(Spring+SpringMVC+MyBatis) #### 一、基础知识概述 **Spring** - **定义与起源**:Spring框架是一个开源的轻量级Java开发框架,它最初由Rod Johnson在2003年创建。Spring框架的主要...

    轻松上手Spring Boot:打造现代微服务的实战指南

    - **集成测试框架**:Spring Boot 与主流的测试框架如 JUnit、TestNG 等集成良好。 - **测试工具**:提供了多种测试支持工具,帮助开发者编写高质量的测试代码。 10. **打包和部署** - **Maven/Gradle插件**:...

    spring-framework-3.2.16.RELEASE-dist.zip

    5. **Spring Test**:提供了对Spring应用进行单元测试和集成测试的支持,包括JUnit集成和Mock对象工具。 三、3.2.16.RELEASE版本特性 1. **性能优化**:此版本在多个方面进行了性能优化,包括减少内存占用、提升...

    Springboot+VUE Web开发实践.pdf

    - 测试规范:编写单元测试和集成测试,确保代码的健壮性,使用JUnit、Mockito等工具进行测试。 1.3 SpringBoot注解 - SpringBoot/Spring常用注解:例如@Component、@Service、@Repository、@Controller等,它们...

    spring培训的例子

    例如,可能会介绍如何在Eclipse或IntelliJ IDEA中配置Spring项目,或者如何使用Maven或Gradle进行构建,也可能包括使用JUnit进行单元测试。 从压缩包子文件的文件名称“ch06-Struts3”来看,这个例子可能包含一个第...

Global site tag (gtag.js) - Google Analytics