DbUnit使用入门

导读:本篇文章讲解 DbUnit使用入门,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

DbUnit 是在JUnit的基础上扩展而成的Java单元测试框架。

如果你的业务逻辑涉及到了对数据库中记录的增、删、改、查操作,而你又不想每次都手动到数据库里查询,来验证你的业务逻辑,那么DbUnit可以帮助你。实际上,如果你的单元测试中只有少量业务逻辑对数据库进行了操作,那么,DbUnit在单元测试中的优势还体现不出来,但是,如果你的单元测试用例中有大量的DAO操作,那么全凭手动执行数据库查询,讲造成工作效率降低,而且可能会遗漏功能点。而且,在回归测试中,验证DAO操作的工作不能重用。

现在就让我们开始认识DbUnit吧DbUnit使用入门!首先介绍org.dbunit.DatabaseTestCase.java类,源码如下:

DbUnit使用入门
package
 org.dbunit;
DbUnit使用入门
DbUnit使用入门

import
 junit.framework.TestCase;
DbUnit使用入门

import
 org.dbunit.database.IDatabaseConnection;
DbUnit使用入门

import
 org.dbunit.dataset.IDataSet;
DbUnit使用入门

import
 org.dbunit.operation.DatabaseOperation;
DbUnit使用入门
DbUnit使用入门

/** */


DbUnit使用入门

public
 
abstract
 
class
 DatabaseTestCase 
extends
 TestCase
DbUnit使用入门


{
DbUnit使用入门    
public DatabaseTestCase()
DbUnit使用入门    
{
DbUnit使用入门    }

DbUnit使用入门
DbUnit使用入门    
public DatabaseTestCase(String name)
DbUnit使用入门    
{
DbUnit使用入门        
super(name);
DbUnit使用入门    }

DbUnit使用入门
DbUnit使用入门    
/**
DbUnit使用入门     * Returns the test database connection.
DbUnit使用入门     
*/

DbUnit使用入门    
protected abstract IDatabaseConnection getConnection() throws Exception;
DbUnit使用入门
DbUnit使用入门    
/**
DbUnit使用入门     * Returns the test dataset.
DbUnit使用入门     
*/

DbUnit使用入门    
protected abstract IDataSet getDataSet() throws Exception;
DbUnit使用入门
DbUnit使用入门    
/**
DbUnit使用入门     * Close the specified connection. Ovverride this method of you want to
DbUnit使用入门     * keep your connection alive between tests.
DbUnit使用入门     
*/

DbUnit使用入门    
protected void closeConnection(IDatabaseConnection connection) throws Exception
DbUnit使用入门    
{
DbUnit使用入门        connection.close();
DbUnit使用入门    }

DbUnit使用入门
DbUnit使用入门    
/**
DbUnit使用入门     * Returns the database operation executed in test setup.
DbUnit使用入门     
*/

DbUnit使用入门    
protected DatabaseOperation getSetUpOperation() throws Exception
DbUnit使用入门    
{
DbUnit使用入门        
return DatabaseOperation.CLEAN_INSERT;
DbUnit使用入门    }

DbUnit使用入门
DbUnit使用入门    
/**
DbUnit使用入门     * Returns the database operation executed in test cleanup.
DbUnit使用入门     
*/

DbUnit使用入门    
protected DatabaseOperation getTearDownOperation() throws Exception
DbUnit使用入门    
{
DbUnit使用入门        
return DatabaseOperation.NONE;
DbUnit使用入门    }

DbUnit使用入门
DbUnit使用入门    
private void executeOperation(DatabaseOperation operation) throws Exception
DbUnit使用入门    
{
DbUnit使用入门        
if (operation != DatabaseOperation.NONE)
DbUnit使用入门        
{
DbUnit使用入门            IDatabaseConnection connection 
= getConnection();
DbUnit使用入门            
try
DbUnit使用入门            
{
DbUnit使用入门                operation.execute(connection, getDataSet());
DbUnit使用入门            }

DbUnit使用入门            
finally
DbUnit使用入门            
{
DbUnit使用入门                closeConnection(connection);
DbUnit使用入门            }

DbUnit使用入门        }

DbUnit使用入门    }

DbUnit使用入门
DbUnit使用入门
DbUnit使用入门    

DbUnit使用入门    
// TestCase class
DbUnit使用入门

DbUnit使用入门    
protected void setUp() throws Exception
DbUnit使用入门    
{
DbUnit使用入门        
super.setUp();
DbUnit使用入门
DbUnit使用入门        executeOperation(getSetUpOperation());
DbUnit使用入门    }

DbUnit使用入门
DbUnit使用入门    
protected void tearDown() throws Exception
DbUnit使用入门    
{
DbUnit使用入门        
super.tearDown();
DbUnit使用入门
DbUnit使用入门        executeOperation(getTearDownOperation());
DbUnit使用入门    }

DbUnit使用入门}


DbUnit使用入门
DbUnit使用入门

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/17329.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!