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),才能使测试运行于Spring测试//环境
@RunWith(SpringJUnit4ClassRunner.class)
//@ContextConfiguration 注解有以下两个常用的属性:
//locations:可以通过该属性手工指定 Spring 配置文件所在的位置,可以指定一个或多个 Spring 配置文件
//inheritLocations:是否要继承父测试类的 Spring 配置文件,默认为 true
@ContextConfiguration(locations={"classpath:/spring/*-resource.xml",
"classpath:/spring/*-validator.xml",
"classpath:/spring/*-datasource.xml",
"classpath:/spring/*-dao.xml",
"classpath:/spring/*-service.xml"})
//如果只有一个配置文件就直接写locations=“配置文件路径+名”
//多个文件也可以直接用正则表达式匹配,如"classpath:/context/applicationContext-*.xml"
public class CommentManagerTest {
@Autowired
private CommentManager manager;
@Test
public void managerTest()
{
//发表评论调用service业务方法
System.out.println(“manager.getxxx()”));
}
}
2.脱离web容器的springMVC的测试
传统认为,web应用的测试因为涉及到web组件,需要web容器的支持,这给测试带来复杂性.可不可以脱离web容器对web应用进行测试呢?spring告诉你可以.
Spring自身提供了一个Mock实现:它可以轻松的对Web组件进行单元测试,就象测试POJO(普通Java对象)一样简单.它在J2EE的WEB端为每个关键接口提供了一个Mock实现
A. MockHttpServletRequest:HttpServletRequest接口的mock实现。
B. MockHttpServletResponse:HttpServletResponse接口的mock实现。
C. MockHttpSession:HttpSession接口的mock实现。
......
测试代码如下
@Test
public void testController(){
MockHttpServletRequest req = new MockHttpServletRequest();
req.setMethod("post");
req.setAttribute("username", "Alan");
MockHttpServletResponse response = new MockHttpServletResponse();
try{
ModelAndView view = pstFileSourcingViewService.listSourceRegion(req, resp);
}catch(Exception se){
se.printStackTrace();
}
}
分享到:
相关推荐
总结一下,基于Spring的JUnit4单元测试涉及到以下几个关键点: 1. 使用`@RunWith(SpringRunner.class)`和`@ContextConfiguration`设置Spring测试环境。 2. `@Autowired`注解注入需要测试的bean。 3. 编写`@Test`注解...
这篇博客主要探讨了如何使用JUnit进行Spring MVC Controller的单元测试。在实际开发中,单元测试可以帮助我们尽早发现潜在的问题,提高软件的可靠性和可维护性。 首先,让我们了解Spring MVC的基本概念。Spring MVC...
《Spring4与JUnit的简单测试实践》 在Java开发领域,Spring框架以其强大的功能和灵活性深受开发者喜爱。Spring4作为其一个重要的版本,引入了许多改进和优化,使得测试变得更加便捷。而JUnit作为Java单元测试的事实...
在这个“spring3 junit 测试”主题中,我们将深入探讨如何在Spring3环境中集成和使用JUnit进行单元测试。Spring3提供了对JUnit的内置支持,允许我们在测试上下文中注入依赖,模拟服务,以及使用其强大的测试支持类。...
博主可能还会讨论在Spring 2.x中遇到的挑战,比如JUnit3与Spring的集成,以及如何在没有注解支持的情况下管理测试环境。此外,可能还会提及升级到JUnit4或其他现代测试库的可能性和步骤,因为这在当时是一个常见的...
3. **定义测试上下文**:使用`@ContextConfiguration`注解来指定包含被测试组件的Spring配置文件。这样,Spring会自动加载配置并准备好测试环境。 4. **模拟依赖**:在OSGi环境中,服务通常是通过服务引用获取的。...
《Spring3与JUnit4深度解析》 在Java开发领域,Spring框架和JUnit测试工具是不可或缺的重要组成部分。Spring3.2.8是Spring框架的一个稳定版本,它提供了丰富的功能,包括依赖注入、AOP(面向切面编程)、MVC(模型-...
基于注解的IOC配置,Spring整合Junit_特别适合新手学习。
Spring Boot Junit单元测试【从零开始学Spring Boot】"的主题,深入探讨Spring Boot中Junit单元测试的使用方法和最佳实践。 首先,我们要了解什么是单元测试。单元测试是一种针对软件中的最小可测试单元(如方法)...
3. **Controller**:在非注解测试中,我们需要在XML配置文件中声明Controller类,然后定义处理特定请求的`<bean>`。 4. **HandlerMapping**:这个组件负责将请求映射到相应的处理器方法。 5. **HandlerAdapter**:...
3. **配置Ant**:在Ant的build.xml文件中添加JUnit任务(<junit>),指定测试类路径、测试类或测试套件,以及生成测试报告的相关参数。 4. **运行测试**:通过命令行或者IDE运行Ant任务,Ant会执行JUnit测试,并将...
标题 "spring3_junit4.10_log4j" 暗示了这是一个关于整合Spring 3.0框架、JUnit 4.10测试库以及Log4j日志框架的项目。描述中提到,Spring 3.0需要JUnit 4.5以上的版本,而JUnit 4.10在实际应用中表现良好,同时也...
1. Junit简介:Junit是一款开源的、基于Java的测试框架,由Ernst Leifer和Kent Beck创建。它支持注解驱动的测试,让编写和运行测试变得极其便捷。 2. 注解使用:`@Test`注解用于标记测试方法,`@Before`和`@After`...
在Spring框架中,JUnit是广泛使用的单元测试工具,它与Spring的集成使得我们可以方便地进行基于Java的测试。本文将深入探讨如何在Spring环境中利用JUnit进行"Hello, World!"的测试,同时也涉及到一些源码分析和测试...
总的来说,了解和掌握Spring的事务管理机制以及如何在JUnit测试中使用@Transactional注解,对于Java开发者来说是非常重要的技能。这不仅可以帮助你在开发过程中确保数据的一致性,也能在单元测试中有效地验证代码的...
在这个压缩包中,包含的"ssm的jar文件"应该包括了这三个框架的核心库,以及可能需要的其他辅助库,如Spring的源码和Junit测试库。 1. **Spring框架**:Spring是Java应用中的核心容器,它负责管理对象的生命周期和...
这是一个基于Spring3、MyBatis3和JUnit4的可运行项目示例,旨在提供一个完整的、可测试的Java Web应用程序框架。这个项目的核心是利用Spring作为应用的ioc(Inversion of Control,控制反转)和aop(Aspect Oriented...
- 创建一个测试类,例如`LoginActionTest.java`,并使用JUnit的注解来定义测试方法: ```java import org.junit.Test; import static org.junit.Assert.*; public class LoginActionTest { @Test public ...
标题中的“spring junit”指的是Spring框架与JUnit测试框架的结合使用。在Java开发中,单元测试是确保代码质量的重要步骤,而JUnit是最流行的Java单元测试框架。Spring框架提供了丰富的功能,包括依赖注入、AOP...
3. **TestNG集成**: 虽然Junit是默认的测试框架,但`spring-test`也支持TestNG,一个功能更丰富的测试框架,提供了更多高级特性,如并行测试执行。 4. **Web应用程序测试**: Spring Test模块包含`MockMvc`类,用于...