[技术分享]Cloud新建库测试时如何快速、自动创建基础数据
金蝶云社区-云小爱
云小爱
1人赞赏了该文章 2,381次浏览 未经作者许可,禁止转载编辑于2014年05月28日 16:03:08

做过或正在做Cloud测试的同学,或许都会被一个问题困扰:每次安装新的测试环境,都要重新建立物料、部门、供应商等一大堆基础数据,不仅费时费力,还影响心情。按照目前Cloud每天搭建两次环境的节奏,测试人员需要花费大量的时间和精力在准备基础数据上,特别是下游模块,依赖上游的数据很多,准备数据就更为耗时了。以我们车间管理模块为例,为了要测试工序协作结算功能,至少需要准备组织结构、部门、供应商、采购价目表、设备、员工、资源、作业、工作中心、工艺路线、工序控制码等十几种基础数据,每次新建库测试都是一个非常痛苦的过程。首先究其根源,之所以需要每次新建库测试,据说与平台无法实现同版本数据库升级有关,而此问题估计短期内难以解决。既然从平台的角度短期内,那么只能我们自力更生了,曾经试过用excel导入导出,但是因为涉及基础数据繁多,而且一旦数据结构出现变化导入就会失败,使用起来也是非常不爽。不过幸好,平台提供的单元测试方法,可以用来解决基础数据录入问题,举个例子,要录入一个物料(指定编码和名称,其它字段使用默认值),使用单元测试方法可以很简单实现:this.ViewService.MainBarItemClick(TB_NEW); //模拟新增this.View.Model.SetValue("FNumber",”WL000001”);this.View.Model.SetValue("FName","测试物料");this.ViewService.MainBarItemClick(TB_SAVE); //模拟保存this.ViewService.MainBarItemClick(TB_SUBMIT); //模拟提交this.ViewService.MainBarItemClick(TB_APPROVE); //模拟审核使用单元测试功能来录入数据,基本上是模拟人的录入过程,可以最大程度的利用程序自动默认值设置,我们只需要指定那些我们需要特殊设置的字段,比Excel导入有很大优势。当然,以上只是简单的介绍了大体思路和方法,真正要做到一个灵活可配置的工具,还需要解决以下几个问题:1、 我要准备的基础数据那么多,每个功能都需要写一个单元测试用例插件吗?2、 数据在代码里写死,那我要是新增加测试数据怎么办?3、 我的基础数据的录入是有顺序的,否则执行会失败。 为了解决以上问题,我的思路是:1、 创建一个统一的单元测试插件入口,不管是什么功能都调用这一个入口类;2、 使用XML作为数据脚本,在插件中进行解析执行,具有很高的灵活性3、 BOS目前的单元测试执行时会自动使用多线程并行测试,因此对BOS代码做点小改动,使其能够按顺序执行

目前该工具已经作为我们新建库测试时基础数据录入的主要手段,可以自动生成绝大多数基础数据。 一个XML样例如下: 1.01.003 70KW柴油机FErpClsID 2 1.01.003.0057 侧板-70KW系列 1.01.110-0018.000 轴承

1.01.001.0059 螺杆 2

您的鼓励与嘉奖将成为创作者们前进的动力,如果觉得本文还不错,可以给予作者创作打赏哦!

请选择打赏金币数 *

10金币20金币30金币40金币50金币60金币
可用金币: 0