`

Spring与junit结合测试

    博客分类:
  • java
 
阅读更多
假设Spring配置文件为applicationContext.xml


一、Spring配置文件在类路径下面

在Spring的java应用程序中,一般我们的Spring的配置文件都是放在放在类路径下面(也即编译后会进入到classes目录下)。

以下是我的项目,因为是用maven管理的,所以配置文件都放在“src/main/resources”目录下



这时候,在代码中可以通过
    ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");
 

然后获取相应的bean。


如果代码想用Junit测试框架来测试,则Spring提供了对Junit支持,还可以使用注解的方式:
    @RunWith(SpringJUnit4ClassRunner.class)  
    @ContextConfiguration(locations={"classpath:applicationContext.xml"})  


只需要在相应的Test类前面加上此两个注解(第二个注解用来指明Spring的配置文件位置),就可以在Junit Test类使用中Spring提供的依赖注入功能。

二、Spring配置文件在WEB-INF下面

当然在做J2EE开发时,有些人习惯把Spring文件放在WEB-INF目录(虽然更多人习惯放在类路径下面)下面;或者有些Spring配置文件是放在类路径下面,而有些又放在

WEB-INF目录下面,如下图。


这时候,在代码中就不可以使用ClassPathXmlApplicationContext来加载配置文件了,而应使用FileSystemXmlApplicationContext。
    ApplicationContext applicationContext = new FileSystemXmlApplicationContext("src/main/webapp/WEB-INF/applicationContext.xml"); 


然后获取相应的bean。


如果代码想用Junit测试框架来测试,则Spring提供了对Junit支持,还可以使用注解的方式:
    @RunWith(SpringJUnit4ClassRunner.class)  
    @ContextConfiguration(locations={"file:src/main/webapp/WEB-INF/applicationContext.xml"})   

只需要在相应的Test类前面加上此两个注解(第二个注解用来指明Spring的配置文件位置),就可以在Junit Test类使用中Spring提供的依赖注入功能。


下面是我的一个Spring管理下的Junit测试类:
    package com.sohu.group.service.external;  
      
    import java.util.List;  
      
    import org.junit.Test;  
    import org.junit.runner.RunWith;  
    import org.springframework.beans.factory.annotation.Autowired;  
    import org.springframework.test.context.ContextConfiguration;  
    import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;  
      
    @RunWith(SpringJUnit4ClassRunner.class)  
    @ContextConfiguration({"file:src/main/webapp/WEB-INF/applicationContext.xml"})  
    public class SuFriendServiceImplOverRMITest {  
      
        @Autowired  
        private SuFriendService suFriendService;  
          
        @Test  
        public void getUserFollowerListTest(){  
            List<String> list = suFriendService.getUserFollowerList("liug_talk@163.com");  
            System.out.println("------"+list);  
        }  
    }  
分享到:
评论

相关推荐

    spring MVC junit 单元测试(controller)

    这篇博客主要探讨了如何使用JUnit进行Spring MVC Controller的单元测试。在实际开发中,单元测试可以帮助我们尽早发现潜在的问题,提高软件的可靠性和可维护性。 首先,让我们了解Spring MVC的基本概念。Spring MVC...

    基于Spring的JUnit单元测试

    在Spring框架中,我们经常需要测试与依赖注入相关的逻辑。Spring提供了一个名为`@ContextConfiguration`的注解,用于指示测试类加载的上下文配置。通过这个注解,我们可以指定Spring配置文件的位置,例如: ```java...

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

    总结起来,Spring Boot与JUnit的结合使得单元测试变得简单而强大。通过编写清晰、全面的测试用例,我们可以有效地保证代码质量,减少线上故障,同时提高开发效率。在学习Spring Boot的过程中,掌握单元测试是非常...

    Spring+JUnit4 +Ant测试报告

    Spring框架结合JUnit4和Ant构建的测试环境,能够有效地帮助开发者进行高效、可靠的测试。本篇将深入探讨如何利用这些工具进行测试,以及它们各自的关键功能。 首先,让我们了解Spring框架。Spring是Java企业级应用...

    spring4+JUnit简单测试

    Spring4与JUnit的结合使得我们可以创建集成测试,验证整个Spring应用的组件之间是如何协作的。通过`@Autowired`注解,我们可以注入需要测试的服务或者bean,然后在测试方法中调用它们。例如: ```java @RunWith...

    day38 20-Spring与Junit整合

    标题中的“Spring与JUnit整合”指的是在Java开发中将Spring框架和JUnit测试框架结合使用,以便进行高效且全面的单元测试。Spring是一个广泛使用的开源框架,它提供了依赖注入(DI)和面向切面编程(AOP)等功能,...

    spring2 junit3

    结合这些文件,我们可以推断,这篇博文可能详细讲解了如何在Spring 2.x中设置JUnit3测试环境,包括编写测试类、配置Spring上下文以支持测试、使用依赖注入来模拟协作对象,以及如何通过Maven或Eclipse进行构建和执行...

    spring+junit4

    这里的`SpringJUnit4ClassRunner`是JUnit的扩展,它会启动Spring容器并初始化测试类中的bean。 接着,我们可以使用`@Autowired`注解来自动注入需要的依赖。假设我们有一个`MyService`服务需要在测试中使用: ```...

    spring3 junit 测试 + word

    - **@RunWith(SpringJUnit4ClassRunner.class)**:这个注解将JUnit测试类与Spring TestContext框架关联起来,使Spring能够管理测试环境。 - **@ContextConfiguration**:此注解用于指定测试所需的配置文件,Spring...

    spring junit

    标题中的“spring junit”指的是Spring框架与JUnit测试框架的结合使用。在Java开发中,单元测试是确保代码质量的重要步骤,而JUnit是最流行的Java单元测试框架。Spring框架提供了丰富的功能,包括依赖注入、AOP...

    Spring整合Junit框架进行单元测试Demo

    接下来,我们要创建一个测试类,该类需要继承Spring的`AbstractJUnit4SpringContextTests`或`SpringJUnit4ClassRunner`。前者适用于Spring 3.x,后者适用于Spring 4.x及更高版本。这些基类会帮助我们加载Spring上...

    spring-dm junit

    在这些类中,你可以使用`@RunWith(SpringJUnit4ClassRunner.class)`注解来表明测试需要Spring Test的支持。 3. **定义测试上下文**:使用`@ContextConfiguration`注解来指定包含被测试组件的Spring配置文件。这样,...

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

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

    junit4测试jar包

    10. **扩展性与兼容性**:JUnit4设计得非常开放,可以通过实现`Runner`接口来扩展其功能,例如SpringJUnit4ClassRunner可以结合Spring框架进行测试。同时,JUnit4与大多数IDE和构建工具(如Maven、Gradle)良好集成...

    Spring整合JUnit示例Demo

    这里,`@RunWith(SpringJUnit4ClassRunner.class)`指定了测试运行器,`@ContextConfiguration(locations = {"classpath:applicationContext.xml"})`则指定了Spring配置文件的位置。`@Autowired`注解允许我们在测试类...

    junit针对spring mvc三层测试

    JUnit结合Mockito可以编写测试用例,确保业务逻辑在各种输入条件下都能得到预期结果。 最后,服务数据访问层主要负责数据的操作,如CRUD操作。这一层的测试通常包括验证数据库操作的正确性。我们可以使用内存数据库...

    SpringBoot中整合Junit测试示例源码

    Spring Boot提供了与Junit的紧密集成,使得我们可以轻松地创建和运行测试用例,从而确保我们的应用代码的质量。以下是对这个主题的详细阐述: 一、Spring Boot与JUnit的集成 Spring Boot默认集成了JUnit 5,这使得...

    spring整合单元测试Junit开发包

    9. **AssertJ和Hamcrest**: Spring Test通常与这些强大的断言库结合使用,提供更清晰、表达力更强的断言,帮助编写更具可读性的测试代码。 10. **Mock Beans**: 可以使用`@MockBean`和`@SpyBean`注解在测试上下文中...

    Spring_Junit

    当Spring与JUnit结合使用时,可以实现对Spring Bean的高效测试。 标题"Spring_Junit"暗示了我们将探讨如何在Spring环境中利用JUnit进行测试。以下是一些关键知识点: 1. **Spring测试支持**:Spring提供了对JUnit...

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

    接下来,我们将深入探讨Spring Test与JUnit4的结合使用以及如何通过它们进行测试代码的编写。 首先,Spring Test模块提供了一组测试注解,如`@ContextConfiguration`、`@RunWith(SpringRunner.class)`等,这些注解...

Global site tag (gtag.js) - Google Analytics