基于TestNG 与Selenium 的自动化测试设计与实施(三)

来源:互联网 发布:老人打字软件 编辑:程序博客网 时间:2024/05/23 00:09

DBUnit,它通过有效地管理测试场景中的数据简化了使用数据库的工作。其设计理念就是在测试之前,备份数据库,然后给对象数据库植入我们需要的准备数据,最后,在测试完毕后,读入备份数据库,回溯到测试前的状态,通过DBUnit还可以辅助数据持久层的测试工作,如验证一个实体通过被测试程序(DAO)进行持久化的操作是否正确,验证数据实体是否按照预期写入数据库,并且提供了将数据从数据库与XML文件存储中互相转换的功能。

  上图是从客户表中导出的一条数据,如果测试过程中需要这条数据,那可以通过DBUnit将此条数据初始化到数据库中。

  还有一种情况,如果是新增一个客户,那这个文件里的数据可以用来做断言预期的依据,DBUnit可以将xml转换为DataSet甚至 JavaBean,你可以直接通过数据集进行比较而不是每个字段都要比较一次。

  不过DBUnit也有自己的缺陷,如上图所示,当通过DBUnit与数据库交互时需要检查表的主键,如果某张表没有设置主键就没有办法使用DBUnit的API,只能通过其它方式实现。

  Fitnesse,业务驱动测试的工具代表,FIT是一种通用的开放框架,将测试人员编写的测试方法转换成表格的形式展现给客户,常用于自动化验收测试,在页面上以表格形式记录测试用例输入、预期输出内容,自动运行并显示测试执行结果。但是增加了开发人员一些工作量,要想让fit与你的软件通信,需要自己编写Fit fixture来实现业务与程序逻辑的转换。

0 0
原创粉丝点击