用的时候把build.properties文件中的相关目录设置一下
lib 目录中现有
dbunit-2.4.7.jar slf4j-api-1.6.0.jar
创建数据库时编码尽量用utf-8,否则中文乱码问题很头痛.
CREATE DATABASE /*!32312 IF NOT EXISTS*/`side-study` /*!40100 DEFAULT CHARACTER SET utf8 */;
build.xml
<?xml version="1.0" encoding="UTF-8"?>
<project name="ant_test" default="init-db">
<property file="build.properties" />
<path id="project.lib">
<fileset file="$(dir.lib)" includes="**/*.jar"/>
</path>
<taskdef name="dbunit" classname="org.dbunit.ant.DbUnitTask" classpathref="project.lib"/>
<target name="init-db">
<sql driver="${jdbc.driver}" url="${jdbc.url}" userid="${jdbc.username}" password="${jdbc.password}" src="${dbunit.sql}/schema.sql" onerror="continue">
<classpath refid="project.lib" />
</sql>
<dbunit driver="${jdbc.driver}" url="${jdbc.url}" userid="${jdbc.username}" password="${jdbc.password}">
<dbconfig>
<property name="datatypeFactory" value="${dbunit.datatype}" />
</dbconfig>
<classpath refid="project.lib" />
<operation type="CLEAN_INSERT" src="${dbunit.data}/default-data.xml" format="flat" />
</dbunit>
</target>
</project>
build.properties
#ant build setting
dir.src=src
dir.report=report
dir.classes=classes
dir.lib=lib
dir.dist=dist
dir.doc=doc
main-class=zhch.Test
#dbunit setting
dbunit.sql=sql
dbunit.data=data
dbunit.sqltype=mysql
dbunit.datatype=org.dbunit.ext.mysql.MySqlDataTypeFactory
#dbunit.sqltype=h2
#dbunit.datatype=org.dbunit.ext.h2.H2DataTypeFactory
#dbunit.sqltype=oracle
#dbunit.datatype=org.dbunit.ext.oracle.Oracle10DataTypeFactory
#mysql version database setting
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/side-study?useUnicode=true&characterEncoding=utf-8
jdbc.username=discuz
jdbc.password=discuz
hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect
schema.sql from springside3.3 mini-web
alter table acct_user_role
drop foreign key FKFE85CB3E16A0ABF1;
alter table acct_user_role
drop foreign key FKFE85CB3E7175E811;
drop table if exists acct_role;
drop table if exists acct_user;
drop table if exists acct_user_role;
create table acct_role (
id bigint not null auto_increment,
name varchar(255) not null unique,
primary key (id)
) ENGINE=InnoDB;
create table acct_user (
id bigint not null auto_increment,
email varchar(255),
login_name varchar(255) not null unique,
name varchar(255),
password varchar(255),
primary key (id)
) ENGINE=InnoDB;
create table acct_user_role (
user_id bigint not null,
role_id bigint not null
) ENGINE=InnoDB;
alter table acct_user_role
add constraint FKFE85CB3E16A0ABF1
foreign key (user_id)
references acct_user (id);
alter table acct_user_role
add constraint FKFE85CB3E7175E811
foreign key (role_id)
references acct_role (id);
default-data.xml
<?xml version='1.0' encoding='UTF-8'?>
<dataset>
<acct_role ID="1" NAME="管理员"/>
<acct_role ID="2" NAME="用户"/>
<acct_user ID="1" EMAIL="admin@springside.org.cn" LOGIN_NAME="admin" NAME="Admin" PASSWORD="admin"/>
<acct_user ID="2" EMAIL="user@springside.org.cn" LOGIN_NAME="user" NAME="User" PASSWORD="user"/>
<acct_user ID="3" EMAIL="jack@springside.org.cn" LOGIN_NAME="user2" NAME="Jack" PASSWORD="user2"/>
<acct_user ID="4" EMAIL="kate@springside.org.cn" LOGIN_NAME="user3" NAME="Kate" PASSWORD="user3"/>
<acct_user ID="5" EMAIL="sawyer@springside.org.cn" LOGIN_NAME="user4" NAME="Sawyer" PASSWORD="user4"/>
<acct_user ID="6" EMAIL="ben@springside.org.cn" LOGIN_NAME="user5" NAME="Ben" PASSWORD="user5"/>
<acct_user_role USER_ID="1" ROLE_ID="1"/>
<acct_user_role USER_ID="1" ROLE_ID="2"/>
<acct_user_role USER_ID="2" ROLE_ID="2"/>
<acct_user_role USER_ID="3" ROLE_ID="2"/>
<acct_user_role USER_ID="4" ROLE_ID="2"/>
<acct_user_role USER_ID="5" ROLE_ID="2"/>
<acct_user_role USER_ID="6" ROLE_ID="2"/>
</dataset>
分享到:
相关推荐
创建一个Ant任务,例如 `<dbunit>`,来执行DBUnit的操作。需要配置数据库连接信息(如URL、用户名、密码)、数据格式、操作类型(如CLEAN_INSERT、UPDATE等)以及数据文件路径。 3. 数据文件 数据文件通常为XML或...
**Ant** 是Apache开发的一个Java构建工具,通过XML配置文件定义任务,可以自动化编译、打包、部署等流程。在测试场景中,Ant常用来编译源码、执行测试用例,并生成测试报告。 **Cactus** 是一个用于在服务器环境中...
在本文中,我们将深入探讨如何使用一系列技术和工具,如EJB、Struts1.3、Ant、Cactus、DbUnit、JMeter以及StrutsTest,来实现一个完整的测试流程,针对一个基于Java的企业级应用程序进行全面的测试。这些技术在软件...
本项目利用一系列强大的工具,如EJB(Enterprise JavaBeans)、Struts 1.3、Ant构建工具、Cactus测试框架、DbUnit数据库单元测试工具、JMeter性能测试工具以及StrutsTest扩展,来实现一个全面的测试流程。...
用户可以在自己的测试类中直接或间接调用 DbUnit,或者从 Ant 中使用 DbUnit 来执行某些任务。 DbUnit 的优点是提供了一种相对简单灵活的方式来准备和验证数据库,这种方式独立于被测代码。 DbUnit 还可以与 JUnit ...
总的来说,DBUnit 是一个强大的数据库测试工具,通过 Ant 脚本与数据库进行交互,确保测试环境的一致性和可靠性。通过使用不同的操作类型,可以灵活地管理数据库中的数据,以便在测试前后保持预期的状态。在实际项目...
DbUnit是一个基于JUnit的数据库测试框架,它可以帮助我们测试数据库相关的代码。使用DbUnit,我们可以模拟数据库数据,并测试数据库相关的代码。例如,我们可以使用DbUnit来测试DAO层的代码,确保其能够正确地读取和...
在`build.xml`或`pom.xml`中配置相应的目标,比如`<import>`元素引入dbunit相关的任务,`<sql>`元素执行SQL脚本初始化数据库,`<dbunit>`元素执行dbunit操作。 在`pom.xml`文件中,除了添加JUnit和Spring Test的...
2. **构建工具**:`ant`是一个基于XML的构建工具,常用于Java项目的构建、编译、测试和打包。`build.sh`脚本可能包含Ant命令,执行编译、测试和打包任务。`build.xml`是Ant的构建配置文件,定义了构建过程中的各种...
一个项目由多个目标(targets)组成,每个目标包含一组任务(tasks)。AppFuse项目中的主要任务包括`clean`(清除构建产物)、`ejbdoclet`和`webdoclet`(生成文档)、`compile-module`(编译模块)、`package-...