Spring自带mock测试Controller

转自:http://blog.csdn.net/yin_jw/article/details/24726941

分类: Spring开源框架2014-04-29 17:01 1786人阅读 评论(2) 收藏 举报

Spring自带mock测试Contro

准备SpringMVC环境

注意:使用mock测试需要引入spring-test包

Base类:加载配置文件

[java] view plaincopy

  1. package com.wyy.snail.user.controller;
  2. import org.junit.runner.RunWith;
  3. import org.springframework.test.context.ContextConfiguration;
  4. import org.springframework.test.context.junit4.AbstractTransactionalJUnit4SpringContextTests;
  5. import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
  6. @ContextConfiguration(locations = { "classpath:config/spring/spring-*.xml",
  7. "classpath:config/spring/service-mybatis.xml" })
  8. @RunWith(SpringJUnit4ClassRunner.class)
  9. public class BaseControllerTest extends AbstractTransactionalJUnit4SpringContextTests {
  10. }

测试类:具体业务

[java] view plaincopy

  1. package com.wyy.snail.user.controller;
  2. import java.io.IOException;
  3. import org.junit.Test;
  4. import org.springframework.mock.web.MockHttpServletRequest;
  5. import org.springframework.mock.web.MockHttpServletResponse;
  6. public class LoginControllerTest extends BaseControllerTest {
  7. @Test
  8. public void testLogin() throws IOException {
  9. LoginController loginController = (LoginController) this.applicationContext.getBean("loginController");
  10. MockHttpServletRequest request = new MockHttpServletRequest();
  11. MockHttpServletResponse response = new MockHttpServletResponse();
  12. request.setMethod("POST");
  13. request.addParameter("username", "aa");
  14. request.addParameter("password", "bb");
  15. loginController.login(request, response, "", "", "");
  16. }
时间: 2024-10-26 06:02:45

Spring自带mock测试Controller的相关文章

spring自带测试配置

spring自带的测试注解 @ContextConfiguration(locations="classpath:applicationContext.xml")@RunWith(SpringJUnit4ClassRunner.class) public class TestUserDaoImpl extends AbstractJUnit4SpringContextTests{ @Autowired UserDao userDao; //TODO } classpath:applic

Spring MVC如何测试Controller(使用springmvc mock测试)

在springmvc中一般的测试用例都是测试service层,今天我来演示下如何使用springmvc mock直接测试controller层代码. 1.什么是mock测试? mock测试就是在测试过程中,对于某些不容易构造或者不容易获取的对象,用一个虚拟的对象来创建以便测试的测试方法. 2.为什么要使用mock测试? 使用Mock Object进行测试,主要是用来模拟那些在应用中不容易构造(如HttpServletRequest必须在Servlet容器中才能构造出来)或者比较复杂的对象(如JD

spring mvc 编写处理带参数的Controller

在上一随笔记录的基础上,现记录编写处理带有参数的Controller. @Controller //这个注解会告知<context:component:scan> 将HomeController自动检测为一个Bean@RequestMapping("/home")  //这是根Urlpublic class HomeController {        private UserService userService;        @Autowired    public

Spring Boot应用的测试——Mockito

Spring Boot应用的测试——Mockito Spring Boot可以和大部分流行的测试框架协同工作:通过Spring JUnit创建单元测试:生成测试数据初始化数据库用于测试:Spring Boot可以跟BDD(Behavier Driven Development)工具.Cucumber和Spock协同工作,对应用程序进行测试. 进行软件开发的时候,我们会写很多代码,不过,再过六个月(甚至一年以上)你知道自己的代码怎么运作么?通过测试(单元测试.集成测试.接口测试)可以保证系统的可维

spring boot项目如何测试,如何部署

有很多网友会时不时的问我,spring boot项目如何测试,如何部署,在生产中有什么好的部署方案吗?这篇文章就来介绍一下spring boot 如何开发.调试.打包到最后的投产上线. 开发阶段 单元测试 在开发阶段的时候最重要的是单元测试了,springboot对单元测试的支持已经很完善了. 1.在pom包中添加spring-boot-starter-test包引用 <dependency> <groupId>org.springframework.boot</groupI

小程聊微服务-基于dubbo的mock测试系统

一.说在前面 基于微服务或者SOA的自动化测试系统每个公司都有自己的特有的,我今天就主要介绍一下,我们研发的一套mock测试系统. 二.目前面临的问题 1.测试人员面临的测试问题 我公司目前用的是基于Dubbo的微服务改造,服务之间的调用链路冗长,每个服务又是单独的团队在维护,每个团队又在不断的演进和维护各个服务,那么对测试人员将是非常大的挑战. 测试人员每次进行功能测试的时候,测试用例每次都需要重新写一遍,无法将测试用例的数据沉淀,尤其是做自动化测试的时候,测试人员准备测试数据就需要很长时间,

【Spring】JavaMailSender Spring自带的邮件推送功能实现

备注:JavaMailSender在spring-context-support.jar中 1.配置spring-mail.xml <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-ins

Spring自带定时器实现定时任务

在Spring框架中实现定时任务的办法至少有2种(不包括Java原生的Timer及Executor实现方式),一种是集成第三方定时任务框架,如无处不在的Quartz:另一种便是Spring自带的定时器(仅针对3.0之后的版本).本文将围绕Spring自带定时器,模拟实现一个最简单的定时任务,看看使用起来到底有多简单. 第二步,启动Schedule配置,XML方式的配置请自行搜索,本文仅针对注解方式的实现提供说明. @EnableScheduling @EnableScheduling注解,用来引

使用MockMvc测试controller

之前我们测试controller的时候仅仅是作为一个pojo来进行简单的测试,spring3.2后我们可以按照控制器的方式来测试Spring MVC的controller了,这样的话在测试控制器的时候,就没有必要再启动Web服务器和Web浏览器了,下面是测试代码: import com.darling.controller.TestController; import org.junit.Test; import org.springframework.test.web.servlet.Mock