xlsunit 面向数据库应用的单元测试框架开源项目

我要开发同款
匿名用户2017年08月04日
57阅读
开发技术Java
所属分类开发工具、单元测试工具
授权协议BSD

作品详情

xlsunit辅助junit,用于辅助基于Spring、SpringBoot企业信息系统单元测试,这种企业信息系统都会有大量的数据库操作,使用xlsunit来初始化测试前的数据库,以及使用xlsunit来比较业务调用后的数据库数据,能减少单元测试工作量,增强单元测试可维护性。

xlsunit用excel来模拟数据库表数据,适合那种一次业务操作,多个表数据变化的应用系统。

XLSParser workflowParser = null;//@Autowrired WorkflowService workflowService;//@MockBeanprivate ThirdPatyUserService userService;@Autowiredprotected SQLManager sqlManager;@Beforepublic void init() {  super.init();  //XLSUnit BeetlSql  DBAccess dbAccess = new BeetlSqlDBAccess(sqlManager);  // Excel   XLSFileLoader loader = new XLSFileLoader("root");  //  workflowParser = new XLSParser(loader, "user.xlsx", dbAccess,                                 new RowHolderFacotoy.RowBeetlSQLHolderFactory());}public void testUser1() {  //执行某个测试场景的初始化工作,初始化user表  VariableTable vars = new VariableTable();  userParser.init(vars);  //开始测试,从excel中获取userId和password  userParser.prepare("场景1", vars);      Integer id = (Integer) vars.find("id");  String newPassword = vars.findString("test.password");  //调用业务代码,修改用户密码  userSerivce2.modifyUserInfo(id, newPassword);  //比较数据库里的数据跟场景1的数据是否一致  userParser.test("场景1", vars);}

可以将测试数据写在excel里,或者通过数据库客户端工具粘贴到excel里完成数据的输入。

可以用拥有任意多个excel文件,每个文件概念上都可以包含一个初始化数据的多种测试场景,excel文件有三部分组成

第一个工作表,这个工作表用来介绍当前excel文件所测试的业务,以及包含一个目录,快捷指向每个场景测试

第二个表示数据库初始化数据,可以包含多个表的初始化数据,也可以在初始化数据定义前,定义一些变量,这些变量可以用在初始化数据,JUnit代码里,以及随后的场景测试里

第三个表以后的每个工作表都是场景测试表,对应了单元测试完毕后,期望的数据库的样子。通常用红色背景标注在表的列名上,这样表示只让xlsunit比较关心的列。同时,也能提醒阅读者,编写期望值

xlsunit基于Beetl,完成Excel里计算表达式实现。

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论