有人在JWebunit集成测试里面使用过dbunit吗???
来源:互联网 发布:编程猫官网 编辑:程序博客网 时间:2024/04/29 14:31
我的测试代码如下(一部分)
public class UserTest extends WebTestCase
{
private File file;
private IDatabaseConnection connection;
private IDataSet dataSet;
public UserTest()
{
super();
getTestContext().setBaseUrl("http://localhost:8080/PMV4");
setUserAgent("GUANGYU_PMV4_RCP");
}
protected void setUserAgent(final String userAgent)
{
tester.getTestContext().setUserAgent(userAgent);
}
protected void setUp() throws Exception
{
super.setUp();
// initialize database connection here
Class driverClass = Class.forName("org.hsqldb.jdbcDriver");
Connection jdbcConnection = DriverManager.getConnection(
"jdbc:hsqldb:hsql://localhost/PMV4", "sa", "");
connection
= new DatabaseConnection(jdbcConnection);
dataSet = connection.createDataSet();
file = new File("full.xml");
FlatXmlDataSet.write(dataSet, new FileWriter(file), "GBK");
DatabaseOperation.CLEAN_INSERT.execute(connection, dataSet);
}
protected void tearDown() throws DatabaseUnitException, SQLException
{
connection.close();
connection = null;
file.delete();
}
}
因为我的数据库里面有两个表,一个是TBLDEPARTMENT和TBLUSER。这个测试是只针对USER表里面的数据进行操作的。但是每次都会报下面的错误。
java.sql.SQLException: Integrity constraint violation FK7F3BC9B09D1E094E table: TBLDEPARTMENT
at org.hsqldb.jdbc.jdbcUtil.sqlException(Unknown Source)
at org.hsqldb.jdbc.jdbcStatement.fetchResult(Unknown Source)
at org.hsqldb.jdbc.jdbcStatement.execute(Unknown Source)
at org.dbunit.database.statement.SimpleStatement.executeBatch(SimpleStatement.java:54)
at org.dbunit.operation.DeleteAllOperation.execute(DeleteAllOperation.java:112)
at com.guangyu.pmv4.webapp.view.UserCSTest.setUp(UserCSTest.java:52)
at junit.framework.TestCase.runBare(TestCase.java:125)
at junit.framework.TestResult$1.protect(TestResult.java:106)
at junit.framework.TestResult.runProtected(TestResult.java:124)
at junit.framework.TestResult.run(TestResult.java:109)
at junit.framework.TestCase.run(TestCase.java:118)
at junit.framework.TestSuite.runTest(TestSuite.java:208)
at junit.framework.TestSuite.run(TestSuite.java:203)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:478)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:344)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
本人对数据库不太在行,有人知道是哪里的问题吗?
如果我把CLEAN_INSERT换成别的,如REFRESH就不会 有这种错,到底是哪里的问题啊?
public class UserTest extends WebTestCase
{
private File file;
private IDatabaseConnection connection;
private IDataSet dataSet;
public UserTest()
{
super();
getTestContext().setBaseUrl("http://localhost:8080/PMV4");
setUserAgent("GUANGYU_PMV4_RCP");
}
protected void setUserAgent(final String userAgent)
{
tester.getTestContext().setUserAgent(userAgent);
}
protected void setUp() throws Exception
{
super.setUp();
// initialize database connection here
Class driverClass = Class.forName("org.hsqldb.jdbcDriver");
Connection jdbcConnection = DriverManager.getConnection(
"jdbc:hsqldb:hsql://localhost/PMV4", "sa", "");
connection
= new DatabaseConnection(jdbcConnection);
dataSet = connection.createDataSet();
file = new File("full.xml");
FlatXmlDataSet.write(dataSet, new FileWriter(file), "GBK");
DatabaseOperation.CLEAN_INSERT.execute(connection, dataSet);
}
protected void tearDown() throws DatabaseUnitException, SQLException
{
connection.close();
connection = null;
file.delete();
}
}
因为我的数据库里面有两个表,一个是TBLDEPARTMENT和TBLUSER。这个测试是只针对USER表里面的数据进行操作的。但是每次都会报下面的错误。
java.sql.SQLException: Integrity constraint violation FK7F3BC9B09D1E094E table: TBLDEPARTMENT
at org.hsqldb.jdbc.jdbcUtil.sqlException(Unknown Source)
at org.hsqldb.jdbc.jdbcStatement.fetchResult(Unknown Source)
at org.hsqldb.jdbc.jdbcStatement.execute(Unknown Source)
at org.dbunit.database.statement.SimpleStatement.executeBatch(SimpleStatement.java:54)
at org.dbunit.operation.DeleteAllOperation.execute(DeleteAllOperation.java:112)
at com.guangyu.pmv4.webapp.view.UserCSTest.setUp(UserCSTest.java:52)
at junit.framework.TestCase.runBare(TestCase.java:125)
at junit.framework.TestResult$1.protect(TestResult.java:106)
at junit.framework.TestResult.runProtected(TestResult.java:124)
at junit.framework.TestResult.run(TestResult.java:109)
at junit.framework.TestCase.run(TestCase.java:118)
at junit.framework.TestSuite.runTest(TestSuite.java:208)
at junit.framework.TestSuite.run(TestSuite.java:203)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:478)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:344)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
本人对数据库不太在行,有人知道是哪里的问题吗?
如果我把CLEAN_INSERT换成别的,如REFRESH就不会 有这种错,到底是哪里的问题啊?
- 有人在JWebunit集成测试里面使用过dbunit吗???
- 使用DBUnit集成Spring简化测试
- 使用DBUnit集成Spring简化测试
- 使用jwebunit测试https请求
- JWebUnit使用:jWebUnit是基于Java的Web应用程序的测试框架
- JWebUnit使用:jWebUnit是基于Java的Web应用程序的测试框架 .
- 使用DBUnit测试存储过程
- DBunit测试
- 使用DBUnit实现对数据库的测试
- 在Spring中结合Dbunit对Dao进行集成单元测试
- DbUnit使用
- dbunit使用
- dbunit使用
- dbunit使用
- Spring集成dbunit
- shiro在springmvc,hibernate,ehcache里面的集成使用
- 教程:在iOS项目里面集成使用GHUnit。
- 【Shiro】shiro在springmvc里面的集成使用
- 求助,想编一个windows下的屏幕捕捉程序
- ADO.NET学习笔记(三)
- (翻译)选择正确的GUI测试自动化工具
- ADO.NET读书笔记系列之------DataSet对象
- 回顾Chap.6 处理DataSet对象(2)
- 有人在JWebunit集成测试里面使用过dbunit吗???
- Eclipse快捷键指南
- W2K命令全集
- 求助高手,出现“实时错误91,对象变量或with或块变量未设置”,怎么解决?
- 巨好的文章
- 求助
- SAX和 DOM解析xml文件的区别(转)
- 运行时,出现出错提示,“实时错误91,对象变量或with或块变量未设置”,如何解决?
- Web2.0带来的新应用与新体验