`
晓W枫
  • 浏览: 2491 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

请您先登录,才能继续操作

springmvc的junit 4测试

 
阅读更多
现在重新开始学java,好好的学框架
Spring mvc junit 4

当从中途开始再学习java,挑中一个框架开始学习,学习到测试类的时候,进行单元测试,还是想到了之前的junit 虽然在以前的实际开发中,用的更多的依然是 启动服务,关闭服务,sysout,但是这次想把它学好。

使用junit4 的步骤:
1.项目右键,在java bulid classpath中添加junit支持
2.新建。在想要进行单元测试的类中,进行Test Case添加
3.加入相应的jar
* spring-test-4.0.4.RELEASE.jar
* aopalliance.jar
4.进行spring配置文件的相关配置,对事务的支持
  <tx:annotation-driven transaction-manager="transactionManager" />
  
  <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
    <property name="dataSource" ref="dataSource"/>
  </bean>


5.然后再进行Test Case类的编写

package com.springmvc.act.test;

import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.annotation.Rollback;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.AbstractTransactionalJUnit4SpringContextTests;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import org.springframework.test.context.transaction.TransactionConfiguration;
import org.springframework.test.context.web.WebAppConfiguration;
import org.springframework.test.web.servlet.MockMvc;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.context.WebApplicationContext;
import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.*;  
import static org.springframework.test.web.servlet.setup.MockMvcBuilders.*;  
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.*;  
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.*;

import com.springmvc.act.dao.BlogsDao;

@RunWith(SpringJUnit4ClassRunner.class)
@WebAppConfiguration
@ContextConfiguration(locations={"classpath:springmvc.xml"})
/**
 * 基于Spring mvc 的单元测试
 * 需要的jar
 * spring-test-4.0.4.RELEASE.jar
 * aopalliance.jar
 * 以及junit的相关jar包
 * 
 * 需要配置springmvc 事务相关操作
 * 
 */
@TransactionConfiguration(defaultRollback=true)
@Transactional
public class TestBaseDao  {
	
	@Autowired
	BlogsDao blog;
	
	private MockMvc mockMvc;
	
	@Autowired
	private WebApplicationContext webApplicationContext;
	
	@Before
	public void step(){
		this.mockMvc = webAppContextSetup(this.webApplicationContext).build();
	}
	
	/**
	 * 单元测试 模拟Get请求
	 */
	@Test
	@Rollback(false)
	public void testGet(){
		try {
			mockMvc.perform(get("/test/index").param("name", "zhangsnan"))
			.andExpect(status().isOk()).andDo(print());
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	
	
	/**
	 * 单元测试 junit 模拟Post请求
	 */
	@Test
	public void testPost() throws Exception{
		mockMvc.perform(post("/test/requestMoney").param("id", "10"))
		.andExpect(status().isOk()).andDo(print());
	}
	
	/**
	 * 请求数据库 执行删除操作
	 */
	@Test
	public void testDelete_Blog() {
		System.out.println(blog.delete_Blog("1"));
		
	}

}



* 添加静态的引用
import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.*;  
import static org.springframework.test.web.servlet.setup.MockMvcBuilders.*;  
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.*;  
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.*;

实现get,post 的模拟请求 包括 header body status 等的模拟
分享到:
评论

相关推荐

    Hibernate4+SpringMVC+Junit4+log4j环境搭建Jar包

    这里我们关注的是基于Java技术栈的Web应用环境,具体包括Hibernate4、SpringMVC、JUnit4和log4j这四个核心组件。下面将详细介绍这些组件以及如何整合它们进行环境搭建。 **1. Hibernate4** Hibernate是一个开源的...

    SpringMvc单元测试Junit

    SpringMvc单元测试Junit是Java开发中的重要实践,主要用于确保应用程序的特定部分,如控制器,服务或DAO,按预期工作。在这个Demo中,我们将深入探讨SpringMvc如何与JUnit结合进行有效的单元测试,以及如何利用这些...

    springMVC junit mybatis整合

    在IT行业中,SpringMVC、JUnit和MyBatis是三个非常重要的开源框架,它们分别用于构建Web应用程序、单元测试和数据库操作。这三个组件的整合能够为开发者提供一个高效且易于维护的开发环境。下面将详细讲解这三个框架...

    spring+springMVC+mybatis+maven+junit+mysql

    【标题】"spring+springMVC+mybatis+maven+junit+mysql" 是一个常见的Java Web项目技术栈,它涵盖了从后端开发到数据库管理,再到自动化构建和测试的完整流程。下面将详细阐述这些技术及其在项目中的作用。 ...

    SpringMVC3+Hiberate4+Junit+json

    JUnit4引入了注解,使得测试代码更加简洁易懂,同时提供了丰富的断言方法和测试套件功能,可以有效地进行单个类或整个项目的测试。 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和...

    springmvc项目搭建并实现Junit单元测试

    然后,编写测试类,使用@RunWith注解指定SpringJUnit4ClassRunner运行器,@ContextConfiguration注解加载上下文配置,使用@WebAppConfiguration表明是Web应用测试。例如: ```java package ...

    Ant+Junit+Svn实现自动单元测试

    - 安装JUnit库,将其jar文件添加到Ant的lib目录,以便Ant能够运行JUnit测试。 - 安装Subversion(Svn),配置相关环境变量。 - 将svnant.jar,svnClientAdapter.jar,svnjavahl.jar添加到项目的lib目录,以支持...

    springMVC+mybatis+maven+junit

    JUnit支持注解,使得测试代码更简洁,同时与Mockito等库配合使用,可以进行模拟对象测试,隔离被测试代码的依赖。 这四个技术结合在一起,可以构建出一套完整的开发流程:使用Maven管理项目依赖和构建流程,Spring ...

    springmvc5+hibernate5+junit4+log4j2整合实例

    在本整合实例中,我们将探讨如何将Spring MVC 5、Hibernate 5、JUnit 4 和 Log4j2 集成在一起,以构建一个高效、可测试和日志记录完善的Java Web应用程序。以下是对这些技术及其整合过程的详细说明: **Spring MVC ...

    springmvc ssh通用的junit测试样例

    总的来说,Spring MVC SSH通用的JUnit测试样例是Java Web开发中不可或缺的工具,它们帮助开发者构建健壮、可维护的代码,同时提高开发效率。这些测试样例不仅提供了测试的模板,也是理解SSH和Spring MVC测试策略的...

    SpringMVC+Hibernate+Junit4基本框架近乎0配置Jar包

    SpringMVC、Hibernate和JUnit4是Java开发中的三大重要工具,它们分别在不同的层面上助力于应用程序的构建和测试。本压缩包提供了这三者组合的基本框架所需的Jar包,几乎无需额外配置,大大简化了开发过程。 首先,...

    activti实例带完整JUnit4测试

    标题"activti实例带完整JUnit4测试"表明这是一个关于Activiti的工作流程引擎的实例项目,其中包含了使用JUnit4进行的全面测试。Activiti是一个开源的业务流程管理(BPM)和工作流系统,它允许开发者通过模型驱动的...

    maven+springMVC+mybatis+junit详细搭建过程整合实现demo,带有jar包和测试类。增删改查的操作供大家学习。

    本教程将详细讲解如何使用四个关键的技术栈——Maven、SpringMVC、MyBatis和JUnit来搭建一个功能完善的示例项目,并包含了数据库操作和单元测试。下面,我们将深入探讨每个组件以及它们在项目中的作用。 首先,**...

    eclipse_springmvc_maven_mybstis3_junit4

    【标题】"eclipse_springmvc_maven_mybatis3_junit4" 提示我们这是一个基于Eclipse开发的项目,它整合了Spring MVC、Maven、MyBatis和JUnit4这四大核心组件,用于构建Web应用程序的示例。下面将详细阐述这些技术及其...

    junit针对springmvc工程三层测试.rar )

    junit针对springmvc工程三层测试.rar

    spring+springmvc+mybatis+maven+junit整合

    在集成开发环境中,JUnit测试通常与持续集成工具一起使用,以保证每次代码更改后都能进行自动测试。 在这个整合项目中,`index.jsp`可能是应用的主页面,展示给用户的第一界面。`WEB-INF`目录包含应用的配置文件,...

    spring4+springMVC+Mybatis项目搭建以及测试demo

    在本文中,我们将深入探讨如何搭建一个基于Spring4、SpringMVC和Mybatis的项目,以及如何进行测试。这个项目组合通常被称为“SSM”框架,是Java Web开发中的主流选择,提供了强大的依赖注入、MVC架构和持久层管理...

    springmvc+mybatis+maven+junit实现网页的增删查改

    为了确保代码质量,我们需要编写JUnit测试。在`src/test/java`下,为每个Service或Controller创建测试类,利用Mockito模拟依赖,对各个功能进行单元测试。例如,`UserServiceTest`可以测试UserService的所有CRUD操作...

    springmvc_mybatis3_maven_junit4

    这个项目可以帮助开发者快速入门Spring MVC和MyBatis 3的整合,了解如何利用Maven进行依赖管理和构建,以及如何编写JUnit测试以确保代码质量。此外,对于想要提升Web应用开发技能的人来说,深入研究该项目的源码也是...

    spring4+springmvc4+hibernate4 整合DEMO

    9. **测试**:编写JUnit测试用例,验证整合后的系统是否能够正常运行,包括数据的增删改查、事务的回滚和提交等。 通过这个DEMO,开发者可以了解如何在实际项目中整合这三个框架,实现高效的企业级应用开发。这不仅...

Global site tag (gtag.js) - Google Analytics