追求代码质量: 测试 Struts 遗留的应用程序
2009-11-19 00:00:00 来源:WEB开发网有了这个文件,就可以利用 DbUnit 插入数据、更新数据库来反映数据,甚至删除数据。数据库修改逻辑包含在 DbUnit 的 DatabaseOperation 类中。在这个示例中,只是通过 清单 4 中定义的 MockStrutsTestCase 类型的 setUp() 方法中的一些增强的 fixture 逻辑中的 CLEAN_INSERT 标志来保证干净的数据集。例如,在清单 8 中,定义了三个方法,分别利用 DbUnit API 把 dbunit-user-seed.xml 文件的内容插入数据库。
清单 8. 定制的 DbUnit fixture 逻辑private void executeSetUpOperation() throws Exception{
final IDatabaseConnection connection = this.getConnection();
try{
DatabaseOperation.CLEAN_INSERT.execute(connection, this.getDataSet());
}finally{
connection.close();
}
}
private IDataSet getDataSet() throws IOException, DataSetException {
return new FlatXmlDataSet(new File("test/conf/dbunit-user-seed.xml"));
}
private IDatabaseConnection getConnection() throws ClassNotFoundException, SQLException {
final Class driverClass = Class.forName("org.gjt.mm.mysql.Driver");
final Connection jdbcConnection = DriverManager.
getConnection("jdbc:mysql://localhost/ccb01",
"9043", "43xli");
return new DatabaseConnection(jdbcConnection);
}
更多精彩
赞助商链接