- 浏览: 1682921 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (1323)
- easyui学习 (21)
- jquery (51)
- css (21)
- js (103)
- html (19)
- java (95)
- 测试工具 (7)
- oracle (45)
- eclipse (9)
- spring (8)
- 开源框架 (111)
- struts (12)
- hsqlbd (2)
- h2database (2)
- maven (8)
- activiti (2)
- sql语句 (7)
- fmpp (1)
- apache (2)
- tomcat (6)
- jbpm (2)
- ant (20)
- mysql (10)
- 业务需求 (54)
- ralasafe (3)
- Quartz (4)
- mybatis (8)
- flex (6)
- html5 (16)
- apache工具 (4)
- hibernate (5)
- linux (109)
- powerdesigner (3)
- 报表 (1)
- log4j (2)
- junit (1)
- shiro (4)
- wap (3)
- php (28)
- mantis (1)
- poi (3)
- extjs (1)
- 安防 (34)
- 网络 (113)
- UltraEdit (1)
- 手机 (9)
- freemarker (19)
- jquery mobile (28)
- css3 (1)
- 微信 (9)
- nodejs (7)
- 项目管理 (14)
- 文档 (13)
- ibatis (22)
- ftp (3)
- spring MVC (9)
- groovy (2)
- AngularJS (19)
- nginx (15)
- 会计 (5)
- hive (1)
- 分布式 (8)
- 设计模式 (4)
- velocity (2)
- 爬虫 (2)
- git (1)
- thymeleaf (4)
- activemq (5)
- bootstrap (1)
- Spring Batch (1)
- memcache (20)
- ttserver (1)
- Jenkins (1)
- cxf (1)
- axure (2)
- 银行金融 (11)
- c语言 (2)
- 大数据 (4)
- drools (4)
- python (2)
- 交易所 (1)
- haproxy (1)
- dubbo (3)
- dos (3)
- 人力资源 (4)
- 支付 (1)
- Intellij IDEA (1)
- IPO (1)
- springboot (1)
- 质量管理 (7)
- svn (1)
- 其他 (8)
- 阿里云 (2)
- 多媒体设计 (2)
- 数据库 (4)
- wps (0)
最新评论
-
masuweng:
en
Native.js -
rmnjava:
我按照你的方法写的,不起作用啊
easyui验证的删除和恢复 -
rmnjava:
原地址打不开了呀
easyui验证的删除和恢复 -
sunteng:
sunteng 写道这是json 吗[{url:'aaa'}, ...
freemarker解析json数组 -
sunteng:
这是json 吗
freemarker解析json数组
Dbunit
【概念】
dbunit是一个基于junit扩展的数据库测试框架。它提供了大量的类对与数据库相关的操作进行了抽象和封装,虽然在80%的情况,你只需使用它极少的api。它通过使用用户自定义的数据集以及相关操作使数据库处于一种可知的状态,从而使得测试自动化、可重复和相对独立。虽然不用dbunit也可以达到这种目的,但是我们必须为此付出代价(编写大量代码,测试及维护),既然有了这么优秀的开源框架,我们又何必再造轮子。
DbUnit是为数据库驱动的项目提供的一个对JUnit
的扩展,除了提供一些常用功能,它可以将你的数据库置于一个测试轮回之间的状态。
【简介】
为依赖于其他外部系统(如数据库或其他接口)的代码编写单元测试是一件很困难的工作。在这种情况下,有效的单元必须隔离测试对象和外部依赖,以便管理测试对象的状态和行为。
使用mock
object对象,是隔离外部依赖的一个有效方法。如果我们的测试对象是依赖于DAO的代码,mock
object技术很方便。但如果测试对象变成了DAO本身,又如何进行单元测试呢?
开源的DbUnit项目,为以上的问题提供了一个相当优雅的解决方案。使用DbUnit,开发人员可以控制测试数据库的状态。进行一个DAO单元测试之前,DbUnit为数据库准备好初始化数据;而在测试结束时,DbUnit会把数据库状态恢复到测试前的状态。
【原理】
dbunit的与单元测试相关的两个最重要的核心是org.dbunit.database.IDatabaseConnection
和 org.dbunit.dataset.IDataSet
,前者是产品代码使用的数据库连接的一个简单的封装,后者是对单元测试人员自定义的数据集(通常以xml文件的形式存在,且xml文件的格式也有好几种)的封装。
还有一个很重要的咚咚就是org.dbunit.operation.DatabaseOperation,该类是一个抽象类代表了对数据库的操作,例如CUD以及其组合等,
它采用了退化的工厂模式,可直接通过它获取其具体的子类(代表具体的某种操作)如下:
DatabaseOperation.UPDATE
DatabaseOperation.DELETE
DatabaseOperation.DELETE_ALL
DatabaseOperation.TRUNCATE
DatabaseOperation.REFRESH
DatabaseOperation.CLEAN_INSERT
DatabaseOperation.NONE
工作流程如下:
1)testcase.setup--->testcase.getConnection-->getDataSet----->operation.execute(
通常DatabaseOperation.CLEAN_INSERT)
2)testcase.testSomeMethod---->dao.someMethod
3)testcase.teardown---->operation.execute(
通常DatabaseOperation.DELETE_ALL或者DatabaseOperation.NONE)
发表评论
-
QuickTest Professional
2019-05-06 13:29 309QuickTest Professional简称QTP,是一种 ... -
Apache ab并发负载压力测试
2019-05-06 13:24 339ab是Apache提供的一款小巧的压力测试工具。 ab命令 ... -
JSON Web Token(JWT)
2019-03-06 13:19 327JSON Web Token(JWT)是目前最流行的跨域身 ... -
PageOffice 在线office编辑
2019-03-05 17:17 0http://www.zhuozhengsoft.com/P ... -
Elasticsearch
2019-03-05 16:33 0Elasticsearch是一个基于Apache Luce ... -
Prezi
2018-06-29 14:15 318Prezi是一款非常有创意的PPT演示文稿制作软件,具有Mac ... -
sftp搭建
2018-06-28 08:24 681最近项目需要用到sftp服务器,整体sftp服务器搭建比ft ... -
java执行linux命令
2018-05-09 15:51 299http://www.ganymed.ethz.ch/ssh ... -
protocol buffer
2018-04-25 08:27 349protocolbuffer(以下简称PB)是google 的 ... -
JavaMelody
2018-04-24 18:11 568JavaMelody是运行在Java Web容器中,用来监控 ... -
Swagger
2018-04-24 15:58 405Swagger是一个Restful风格接口的文档在线自动生成和 ... -
阿里开源前端框架
2017-12-28 08:41 1529https://ant.design/ http:/ ... -
gitlab
2017-12-26 13:44 377GitLab 是一个用于仓库管理系统的开源项目。使用Git作为 ... -
Flume
2017-10-10 08:57 323Flume最早是Cloudera提供的日志收集系统,目前是A ... -
wicket
2017-09-04 15:40 382Wicket,一个开发Java Web应用程序框架。它使得开发 ... -
推荐个restful小工具
2017-07-27 08:09 509https://github.com/ijson/in-res ... -
U聊通讯工具
2017-07-18 15:44 422https://upchat.95516.net -
Tokyo Cabinet ttserver
2017-01-17 16:32 342http://fallabs.com/tokyocabine ... -
mybatis-dalgen
2016-12-21 09:35 2358官网:http://git.oschina.net/bang ... -
Middlegen
2016-12-21 09:16 263Middlegen一个免费数据库驱动(database-dri ...
相关推荐
DBUnit 是一个开源的 Java 库,专门用于数据库测试,它是 xUnit 测试框架(如 JUnit)的一个扩展。在数据库驱动的项目中,DBUnit 可以帮助开发者确保数据库状态的一致性,使得测试更加可靠。DBUnit 2.4.7 版本包含了...
DBUnit 是一个开源的 Java 库,专门用于数据库测试,它是 xUnit 测试框架的一部分,提供了数据驱动测试的解决方案。在版本 2.4.9 中,DBUnit 提供了一系列的功能,帮助开发者在进行单元测试时能够管理和操作数据库的...
Dbunit 是一个强大的Java库,专门用于数据库的测试和数据管理。它被广泛应用于软件开发过程中,特别是对于那些依赖于数据库的应用程序,因为Dbunit能够帮助开发者有效地管理和控制数据库的状态,确保测试的一致性...
DBUnit是一款开源的Java库,专门用于数据库测试,它遵循TestNG或JUnit测试框架。这个HTML版的帮助文档是从官方站点`http://www.dbunit.org/apidocs/index.html`获取的,包含了DBUnit的所有核心功能和用法的详细说明...
DBUnit 是一个开源的 Java 工具,它与JUnit结合使用,用于数据库的测试驱动开发(TDD)。在Java应用程序的测试过程中,确保数据库状态的一致性是非常重要的,DBUnit 提供了这样的功能,它允许开发者导入和导出数据库...
DBUNIT 使用 DbUnit 是一种用于数据库集成测试的重要工具,它提供了TestCase 子类,用户可以在自己的测试类中扩展它们,但也可以独立于 JUnit 以其他方式来使用 DbUnit。DbUnit 的主要用途是准备数据库和验证数据库...
DBUNIT 是一个开源的 Java 库,专门用于数据库测试,它提供了一种结构化的方法来设置和验证数据库的状态。在软件开发中,测试是保证代码质量和功能正确性的重要环节,而 DBUNIT 尤其适用于对数据库操作进行测试,...
DBUnit 是一个强大的Java库,专门用于数据库的单元测试。它与JUnit和其他测试框架结合使用,可以帮助开发者在数据库层面上确保代码的正确性。DBUnit 提供了一种结构化的方式来导入和导出数据库数据,使得测试环境...
DbUnit 是一个针对数据库驱动项目的JUnit扩展,同时也可用于Ant构建工具。它的主要功能是能够将数据库数据导出到XML数据集,并从XML数据集中导入,从而支持数据库的测试和数据管理。DbUnit还允许你验证数据库中的...
`Junit` 和 `dbunit` 是两个非常重要的工具,它们分别针对Java应用程序的单元测试和数据库测试提供支持。让我们详细了解一下这两个库以及如何将它们结合使用。 `Junit` 是一个流行的开源Java单元测试框架,由Ernst ...
这篇“DBUnit最佳实践之数据备份与恢复”博文中,作者分享了如何有效地利用DBUnit进行数据备份和恢复,这对于开发和测试环境中的数据管理至关重要。 首先,我们需要了解DBUnit的基本概念。DBUnit是一个JUnit扩展,...
Junit4.10、DbUnit2.4.7、HttpUnit和JunitPerf是Java测试领域中常用的四个库,它们各自为不同的测试场景提供了强大的支持。下面将详细介绍这些库的功能和使用方法。 1. Junit4.10: Junit是Java编程语言中最著名的...
DBUnit 是一个 Java 开发者常用的数据库测试工具,它与JUnit等测试框架配合,能够帮助开发者在测试过程中管理和填充数据库,确保数据的一致性和准确性。本文将深入探讨如何结合Ant构建自动化测试流程,利用DBUnit...
DbUnit则是一个专门用于数据库单元测试的工具,它允许开发者在测试前后对数据库的状态进行操作,如填充测试数据、清理数据等,以保证每次测试都在一致的环境中进行。 首先,了解JUnit4的基础知识至关重要。JUnit4...
DBUnit 是一个开源的 Java 库,专门用于数据库测试,它提供了一种方式来管理和操作数据库的数据,包括数据的导入导出、备份和恢复。在本文中,我们将深入探讨如何利用 DBUnit 进行数据库的备份与恢复。 首先,我们...
在软件开发中,Spring框架是Java企业级应用的主流选择,而DBUnit则是一个用于数据库测试的工具。本文将深入探讨如何将Spring与DBUnit整合,以实现高效、可靠的数据库集成测试。 首先,理解Spring的核心功能是至关...
在Spring框架中,进行Dao层的集成单元测试时,常常会结合Dbunit工具来实现数据库相关的测试。Dbunit是一款强大的Java库,它扩展了JUnit,为数据库提供了结构化数据的导入和导出,使得测试更加方便和可靠。下面将详细...
DBUnit 是一个 Java 编程语言的开源工具,专门用于数据库的单元测试。它与JUnit 结合使用,提供了一种结构化的方法来设置和验证数据库的状态,确保代码的正确性。在进行数据库驱动的应用程序开发时,DBUnit 可以帮助...
DBUnit 是一个开源的 Java 库,专门用于数据库测试,它是 xUnit 测试框架(如 JUnit)的一个扩展。在数据库驱动的项目中,DBUnit 提供了一种结构化的方法来设置和验证数据库状态,从而确保测试的一致性和可靠性。这...