文档章节

单元测试之测试spring MVC

落雨萧萧
 落雨萧萧
发布于 2015/07/31 09:23
字数 158
阅读 40
收藏 1
@RunWith(SpringJUnit4ClassRunner.class)
@WebAppConfiguration
@ContextConfiguration({"classpath:wechat_core/spring-context.xml","file:src/main/webapp/WEB-INF/config/spring/spring-servlet.xml"})
public class LoginControllerTest  extends AbstractJUnit4SpringContextTests  {
	
	@Autowired
	private WebApplicationContext applicationContext;
	
	private MockMvc mockMvc;
	
	@Before
	public void init(){
		logger.info("....登录测试开始...");
		this.mockMvc = webAppContextSetup(this.applicationContext).build();
	}
	
	@After
        public void destory(){  
		logger.info("....登录测试结束...");
        }  
	
	@Test
	public void LoginTest() throws Exception{
		
		MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders.get("/login"))  
        	.andExpect(MockMvcResultMatchers.view().name("/login"))   
        	.andDo(MockMvcResultHandlers.print())  
        	.andReturn();
		
			
		mvcResult =  mockMvc.perform(MockMvcRequestBuilders.post("/login")
		            .param("###","###").param("###", "###"))  
		            .andExpect(MockMvcResultMatchers.view().name("redirect:/home"))   
		            .andDo(MockMvcResultHandlers.print())  
		            .andReturn(); 
		
		mvcResult =  mockMvc.perform(MockMvcRequestBuilders.post("/login") //构建访问方式
			    .param("userName", "hanweifeng")) // 构建参数
		            .andExpect(MockMvcResultMatchers.view().name("/login"))//断言结果映射地址 
		            .andDo(MockMvcResultHandlers.print())  //打印结果
		            .andReturn(); //返回MvcResult
		 //从mvcResult中获取ModelAndView,从ModelAndView中获取modelMap并打印
		ModelAndView modelAndView = mvcResult.getModelAndView();
		ModelMap modelMap = modelAndView.getModelMap();
		System.out.println("msg:"+modelMap.get("msg"));
	}
	
}


© 著作权归作者所有

落雨萧萧
粉丝 2
博文 37
码字总数 4263
作品 0
浦东
高级程序员
私信 提问
Spring MVC Controller 单元测试

简介 Controller层的单元测试可以使得应用的可靠性得到提升,虽然这使得开发的时间有所增加,有得必失,这里我认为得到的比失去的多很多。 Sping MVC3.2版本之后的单元测试方法有所变化,随着...

刘-冬-冬
2014/09/09
0
6
Spring Boot基础教程 ( 五 ) :构建 RESTful API 与单元测试

原文出处:didispace 首先,回顾并详细说明一下在快速入门中使用的、、注解。如果您对Spring MVC不熟悉并且还没有尝试过快速入门案例,建议先看一下快速入门的内容。 :修饰class,用来创建处...

didispace
2018/09/27
0
0
使用springboot构建springmvc工程的问题

原来使用springmvc时,是用xml配置,一共两个: applicationContext.xml spring配置文件 spring-servlet.xml mvc配置文件 分别扫描controller和其他注解,是分开的,单元测试时可以只加载 ap...

jack_jones
2015/12/06
2.4K
2
spring mvc 单元测试

最近在写单元测试,遇到一些坑和大家分享一下。 之前我们一直有service层的单元测试,但是没有action层的单元测试,正好我们用到spring mvc,所以就用了spring-test做单元测试, spring mvc...

internetafei
2014/12/25
0
0
Spring Boot单元测试

一个测试类包含下面两个注解: @RunWith(SpringRunner.class)@SpringBootTest 测试类中可直接注入接口: @ResourceMyServerMgr myServerMgr; 在方法上加@Test表示它是个测试方法: @Testpub...

日进一步
2018/08/22
0
0

没有更多内容

加载失败,请刷新页面

加载更多

利用mybatis generator生成实体类、Mapper接口以及对应的XML文件

项目中通常会遇到数据的持久化,如果是采用mybatis的orm,就会涉及到生成xml的问题,刚好mybatis官网提供了这么个插件MyBatis Generator,效果简直是棒呆。 1. 首先需要在build.gradle文件中...

啊哈关关
今天
2
0
SpringSocial相关的知识点

使用SprigSocial开发第三方登录 核心类 ServiceProvider(AbstractOauth2ServiceProvider):主要负责实现server提供商(例如QQ,微信等共有的东西),默认实现类是AbstractOauth2ServiceProvider...

chendom
今天
2
0
Java并发之AQS详解

一、概述   谈到并发,不得不谈ReentrantLock;而谈到ReentrantLock,不得不谈AbstractQueuedSynchronizer(AQS)!   类如其名,抽象的队列式的同步器,AQS定义了一套多线程访问共享资源...

群星纪元
昨天
2
0
Fabric-sdk-java最新教程

Fabric Java SDK是Fabric区块链官方提供的用于Java应用开发的SDK,全称为Fabric-sdk-java,网上可用资料不多,本文列出了精心整理的针对Fabric Java SDK的最新精选教程。 如果希望快速掌握F...

汇智网教程
昨天
3
0
react 子组件监听props 变化

componentWillReceiveProps //已经被废弃 getDerivedStateFromProps// 推荐使用//如果条件不存在必须要返回null static getDerivedStateFromProps(props, current_stat...

一箭落旄头
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部