1. 加包dbunit-2.2.jar,数据库驱动
2. 数据库表
+----------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| id | int(11) | NO | PRI | | |
| name | varchar(10) | YES | | NULL | |
| password | varchar(20) | YES | | NULL | |
+----------+-------------+------+-----+---------+-------+
3. 以前的业务操作代码(被测试的代码)
public class PersonDaoImpl implements PersonDao {
public Person find(Integer id) throws SQLException, Exception {
// TODO Auto-generated method stub
Statement stat = null;
ResultSet rs = null;
Person person = null;
try {
stat = JDBCUtil.getConnection().createStatement();
String sql = "select * from dbunit where id="+id;
rs = stat.executeQuery(sql);
while(rs.next()){
person = new Person();
person.setId(id);
person.setName(rs.getString("name"));
person.setPassword(rs.getString("password"));
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
throw e;
}finally{
JDBCUtil.close(null, stat, rs);
}
return person;
}
public class JDBCUtil {
private static String driver = "com.mysql.jdbc.Driver";
private static String name = "root";
private static String password = "hejie";
private static String url = "jdbc:mysql://127.0.0.1:3306/hejietest";
public static Connection getConnection()throws Exception{
Class.forName(driver);
Connection con = DriverManager.getConnection(url,name,password);
return con;
}
public static void close(Connection conn,Statement stat,ResultSet rs)throws Exception{
if(conn!=null)conn.close();
if(stat!=null)stat.close();
if(rs!=null)rs.close();
}
}
4. 预定义数据库数据 配置文件 dbtable.xml
<?xml version="1.0" encoding="UTF-8"?>
<dataset>
<dbunit id="1" name="Mandy" password="Smith" />
<dbunit id="2" name="Mandy" password="Smith" />
</dataset>
5. 测试代码
public class DBTest extends DatabaseTestCase {
@Override
protected IDatabaseConnection getConnection() throws Exception {
DatabaseConnection conn = new DatabaseConnection(JDBCUtil.getConnection());
//获得数据库连接
return conn;
}
@Override
protected IDataSet getDataSet() throws Exception {
FlatXmlDataSet fxds = new FlatXmlDataSet(getClass().getResourceAsStream("FlatXmlSelectOwnerTest.xml"));
return fxds ;//从文件中读出初始值为什么。
}
public void testFind(){//测试方法
try {
PersonDao pd = new PersonDaoImpl();
Person person = pd.find(1);
// assertEquals("string11",person.getName());
} catch (SQLException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
补充:DatabaseOperation.CLEAN_INSERT.execute(getConnection(), fxds);
在getDataSet返回前加上上面的代码,表示一种操作方式,已上市查处已有的在写入。
分享到:
相关推荐
1. 安装与依赖:介绍如何添加 DBUnit 和相关依赖到项目中。 2. 创建数据集:讲解如何编写 XML 数据集或 CSV 数据集。 3. 数据库连接:解释如何通过 JDBC 建立数据库连接并创建 `IDatabaseConnection` 实例。 4. 数据...
1. 数据初始化:在测试前,DBUnit 可以导入 CSV、XML 或 Excel 文件中的数据到数据库,设置测试环境的数据状态。 2. 数据验证:测试完成后,DBUnit 可以对比数据库的实际数据与预期结果,确保测试过程中数据库的状态...
DBUNIT 使用 DbUnit 是一种用于数据库集成测试的重要工具,它提供了TestCase 子类,用户可以在自己的测试类中扩展它们,但也可以独立于 JUnit 以其他方式来使用 DbUnit。DbUnit 的主要用途是准备数据库和验证数据库...
Dbunit 是一个强大的Java库,专门用于数据库的测试和数据管理。它被广泛应用于软件开发过程中,特别是对于那些依赖于数据库的应用程序,因为Dbunit能够帮助开发者有效地管理和控制数据库的状态,确保测试的一致性...
DBUNIT 基类DBUNIT 基类DBUNIT 基类DBUNIT 基类DBUNIT 基类DBUNIT 基类DBUNIT 基类DBUNIT 基类DBUNIT 基类DBUNIT 基类DBUNIT 基类DBUNIT 基类DBUNIT 基类DBUNIT 基类DBUNIT 基类DBUNIT 基类DBUNIT 基类DBUNIT 基类...
1. **数据导入/导出**:DBUnit可以将数据从数据库导出到XML或CSV文件,也可以将这些文件中的数据导入到数据库,这在数据迁移或备份时非常有用。 2. **数据比较**:DBUnit提供了断言机制,可以比较数据库的实际状态...
1. **数据导入导出**:DBUnit 支持多种格式的数据导入和导出,包括CSV、XML和Flat XML(一种简化版的XML格式)。这使得数据的准备和验证变得更加方便。 2. **操作模式**:DBUnit 提供了三种操作模式:CLEAN_INSERT...
1. 数据集(Dataset):数据集是 DBUnit 的核心,它定义了数据库的预期状态。数据集可以是 XML、CSV 或 Excel 文件,也可以是内存中的对象。数据集包含了插入数据库的行和列,用于初始化或清理测试环境。 2. 模式...
1. **配置Spring测试环境**:使用Spring Test模块,创建一个继承自`AbstractTransactionalDataSourceSpringContextTests`或`AbstractTransactionalJUnit4SpringContextTests`的测试类。这两个类提供了事务管理,确保...
1. 配置数据库连接:首先,我们需要创建一个DBUnit配置,指定数据库连接信息,包括URL、用户名和密码。 2. 定义数据集:创建XML或CSV文件,包含测试数据,每个文件对应一种数据状态。 3. 设置数据表:在测试类中,...
1. **dbunit.jar**:这是 DBUnit 的主库,包含了所有的 DBUnit 类和接口。这个库提供了数据的导入/导出、数据操作(如填充和清理)、以及与各种数据库的兼容性。 2. **junit.jar**:JUnit 是一个流行的单元测试框架...
1. **DBUnit 概述**:DBUnit 提供了一套 XML 数据格式(如 FlatXML 和 IbatisXML),用于导入和导出数据库数据。它支持多种数据库,包括 Oracle、MySQL、SQL Server 等,并且与 JUnit 集成紧密,允许在测试用例执行...
dbunit的jar包,版本2.2
1. **数据集(Dataset)**: 数据集是 DBUnit 的核心概念,它代表了数据库中的一组记录。数据集通常以 CSV、XML 或 YAML 格式定义,可以用来初始化或验证数据库的状态。 2. **操作模式(Operation)**: DBUnit 支持...
1. **准备数据集**:首先,你需要创建数据集文件,这些文件描述了测试前后期望的数据库状态。数据集通常包含列名和对应的值,可以使用 CSV(逗号分隔值)或 XML 格式。 2. **连接数据库**:使用 DBUNIT,你需要配置...
DBUnit 是一个 Java 开发者常用的数据库测试工具,它与JUnit等测试框架配合,能够帮助开发者在测试过程中管理和填充数据库,确保数据的一致性和准确性。本文将深入探讨如何结合Ant构建自动化测试流程,利用DBUnit...
DbUnit 是一个针对数据库驱动项目的JUnit扩展,同时也可用于Ant构建工具。它的主要功能是能够将数据库数据导出到XML数据集,并从XML数据集中导入,从而支持数据库的测试和数据管理。DbUnit还允许你验证数据库中的...