需要的jar 1.spring-mock.jar 2.dbunit-2.2.jar 3.junit.jar
大概流程:
1.用dbunit创建初始的测试数据。
2.用spring-mock 维护测试过程中的数据会滚,这样可以保证测试后数据库保持原状态。
3.用junit架构测试。
4.用dbunit销毁初始测试数据。
详细过程:
创建测试数据:
dbunit采用配置文件方式,将测试数据放入.xml文件中,形式非常简单:
<表名1
列名1 = 值1
列名2 = 值2
列名3 = 值3
列名4 = 值4
……
……
/>
程序将上面数据加载到数据库
import org.dbunit.IDatabaseTester;
import org.dbunit.JdbcDatabaseTester;
import org.dbunit.dataset.IDataSet;
import org.dbunit.dataset.xml.FlatXmlDataSet;
import org.dbunit.operation.DatabaseOperation;
protected IDataSet getDataSet() throws Exception {
File f = new File(".");
String filePath = f.getAbsolutePath().substring(0,f.getAbsolutePath().length()-1)+"confdbdataSet4mock.xml";
return new FlatXmlDataSet(new FileInputStream(new File(filePath)));
}
初始数据:
databaseTester = new JdbcDatabaseTester("com.mysql.jdbc.Driver",
"jdbc:mysql://127.0.0.1:3306/datetable", "sa", "sa");
IDataSet dataSet = getDataSet();//导入初始数据
databaseTester.setDataSet(dataSet);
databaseTester.onSetup();
销毁数据:
databaseTester.setTearDownOperation(DatabaseOperation.DELETE);
databaseTester.onTearDown();
下面看看spring-mock:
1.封装了junit的testcase:
import org.springframework.test.AbstractTransactionalDataSourceSpringContextTests;
这个类起到的作用:
a.继承testcase
b.读取spring-bean.xml文件中的事务处理,将监听所有事务,然后在测试结束后,进行事务会滚,这样保证在测试过程中产生的数据在结束后不会保存到数据库中。
c.override getConfigLocations()这个函数,将spring读取bean操作进行封装。
public abstract class SpringDAOTestCase extends AbstractTransactionalDataSourceSpringContextTests {
protected String[] getConfigLocations() {
File f = new File(".");
String filePath ="file:" + f.getAbsolutePath().substring(0,f.getAbsolutePath().length()-1)+"confdbspring-context-db.xml";
return new String[] { filePath };
}
}
public class DaoTest4Mock extends SpringDAOTestCase {
protected void onSetUpInTransaction() throws Exception {
super.onSetUpInTransaction();
/*
dbunit 初始化数据
*/
}
protected void onTearDownInTransaction() {
/*
dbunit 释放数据
*/
}
public void testInsert() {
………………
}
public void testUpdate() {
………………
}
public void testDelete() {
………………
}
public void testSelect() {
………………
}
}
分享到:
- 2008-01-24 11:47
- 浏览 1418
- 评论(0)
- 论坛回复 / 浏览 (0 / 3921)
- 查看更多
相关推荐
struts-junit spring-mock spring-test junit等的javadoc.jar格式的API文档,直接导入Eclipse/MyEclipse/Netbeans等IDE即可实现快速API查询。 包含以下文件: File name -------------------------------------- ...
个人作品 5-Mock+EasyMock.rar
Classes contained in spring-mock.jar: org.springframework.mock.jndi.ExpectedLookupTemplate.class org.springframework.mock.jndi.SimpleNamingContext.class org.springframework.mock.jndi....
spring-mock-2.0.8.jar
Spring针对J2EE的常用Web接口提供了Mock,这些组件被发布于spring-mock.jar,介绍如下: MockHttpServletRequest:HttpServletRequest接口的mock实现。 MockHttpServletResponse:HttpServletResponse接口的mock...
vue-cli 3.0 + element-ui + vue-router + axios + Vuex + Mock + echarts 2,测试账号地址 访问地址:待建设 账号:admin密码:admin 账号:xiaoxiao密码:xiaoxiao 因为菜单是根据不同用户权限动态生成的,所以...
使用 vue+vue-router+resquirejs+xe-ajax+mock 前端项目例子
单元测试高级特性--mock模拟网络请求单元测试高级特性--mock模拟网络请求单元测试高级特性--mock模拟网络请求单元测试高级特性--mock模拟网络请求单元测试高级特性--mock模拟网络请求单元测试高级特性--mock模拟网络...
JavaEE源代码 spring-mockJavaEE源代码 spring-mockJavaEE源代码 spring-mockJavaEE源代码 spring-mockJavaEE源代码 spring-mockJavaEE源代码 spring-mockJavaEE源代码 spring-mockJavaEE源代码 spring-mockJavaEE源...
spring-mock-2.0.3.jar
技术栈vue2.0 + elementUI + vuex + easy-mock + vue-router + es6如果对你有帮助请点右上角star,谢谢 概述 这两个月一直忙于公司的后台管理系统开发,现在准备把我司用到的一些组件抽离出来,在写我司项目之前,也...
主要介绍了详解vue2.0+axios+mock+axios-mock+adapter实现登陆,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
1.敏捷开发强调测试先行,因为先编写测试代码,就可以有目的的预防某些bug的产生,要知道,治病不如预防!!!所以我个人觉得这个还是比较重要的,文件也不大,只有8M,但是高清。 2.本版本与网上其他资源不同之处...
管理系统系列--基于react + ant-design + dva + Mock 企业级后台管理系统最佳实践