您的位置:软件测试 > 开源软件测试 > 开源单元测试工具 > DBunit
DBUnit 进行单元测试
作者:网络转载 发布时间:[ 2013/6/28 13:22:03 ] 推荐标签:

  测试类 EmployeeSessionFacadeTest,需要扩展DBUnit的基础类DatabaseTestCase并且必须提供对getConnection()和getDataSet()方法的实现,在getConnection()方法中将获得与EJB容器初始化时一样的数据库实例,getDataSet()方法负责读取上面提及的employee_hr_seed.xml文件的数据。  
  测试方法相当简单,因为DBUnit已经为我们处理了复杂的数据库生命周期任务。为了测试getEmployeeBySocialSecNum()方法,只需要简单的传递一个存在于种子文件中的社保代码号即可,比如
  "333-29-9999".  
  //译者注:EmployeeFacade 类型对象,译者认为是代表底层数据库数据的映射体
  
      public void testFindBySSN() throws Exception{ 
       
      EmployeeFacade facade = //obtain somehow 
       
      EmployeeValueObject vo = 
      facade.getEmployeeBySocialSecNum("333-29-9999"); 
       
      TestCase.assertNotNull("vo shouldn't be null", vo); 
      TestCase.assertEquals("should be Drew", 
      "Drew", vo.getFirstName()); 
      TestCase.assertEquals("should be Smith", 
      "Smith", vo.getLastName()); 
      } 
  
  为了确保操作周期中的创建职员方法createEmployee()没有问题,我们只需简单的执行一下这个方法,然后校验一下看有没有异常抛出,另外,下一步我们要做的是在这条新增的记录上进行查找操作,看是否可以找到刚创建的记录。
完整实例:
使用dbunit,可以帮助我们在测试中维护数据,也可以辅助我们的测试。
首先当然是下载dbunit, http://dbunit.sourceforge.net
我测试用的是 MYSQL 5.0 。
建立数据库:

    create table test1(  
    id int not null auto_increment,  
    user_name varchar(50),  
    primary key(id)) engine=innodb;  

 

保存数据的xml文件:

    <dataset>   
        <test1 user_name="tom"/>                 
        <test1 user_name="John"/>   
        <test1 user_name="Rose"/>      
    </dataset> 
    <dataset> 
        <test1 user_name="tom"/>              
        <test1 user_name="John"/> 
        <test1 user_name="Rose"/>   
    </dataset> 


首先建立一个 JunitTest 的类:

    public class Test2 extends TestCase {    
       
        protected void setUp() throws Exception { }    
       
        protected void tearDown() throws Exception { }    
          
    }   
     
    public class Test2 extends TestCase { 
     
        protected void setUp() throws Exception {} 
     
        protected void tearDown() throws Exception {} 
       
    } 

上一页12345下一页
软件测试工具 | 联系我们 | 投诉建议 | 诚聘英才 | 申请使用列表 | 网站地图
沪ICP备07036474 2003-2017 版权所有 上海泽众软件科技有限公司 Shanghai ZeZhong Software Co.,Ltd