一、 研究背景
随着我行自动化测试建设的深入推进,带动了我行功能测试效率的整体提升,但在建设过程中,各系统在自身业务特点及功能实现方式的不同,在自动化建设和应用过程中也发现了一些适用的难点和问题,制约了自动化测试建设向更广、更深的层次发展,阻碍了自动化测试效率进一步提升。
具体问题主要有:
1、业务对会计日期敏感问题,在产品存在生命周期限制的情况下,产品会对会计日期产生较大依赖,会计日期频繁变化会对产品有效性造成影响;
2、测试数据准备逻辑复杂,作为直接面客的业务产品层面,会受合约、账户、产品和运营环境等关联条线限制,在开展数据遴选和制造时,需要逐层查找、处理,准备过程复杂;
3、数据稳定性不足,测试数据在公共测试环境中开放使用,存在频繁变化和篡改的情况,导致数据无法稳定、有效使用;
4、交易对应自动化案例繁复冗余,前期自动化建设质量不一,导致在实际应用中出现案例重复建设,反复调试,人力重复投入的现象;
5、各案例所用数据各自独立,导致数据需求量大,而数据随机使用,缺乏规划,不利于场景组成,且会对数据稳定性较敏感。
二、 研究目标
针对上述自动化测试建设和应用中发现的具有普遍影响性的问题,探究解决问题的可行办法,以期实现自动化测试低介入、高有效的效果,并在总结经验教训,形成方法论的基础上,持续推广应用,切实提高自动化测试的效率和有效性,进一步解放人力资源,避免重复工作,确保项目质量的整体提升。
三、整体思路
本项目从自动化测试建设应用中遇到的问题入手,结合行内自动化测试工具现状,计划通过构建自动抽取有效铺底数据、实现自动化制造测试数据、基于业务场景组成业务场景闭环等手段,优化和规范自动化测试建设、应用的流程,为持续优化改进自动化测试实践工作提供参考和指导。
四、研究步骤
整体上,研究任务划分为4个阶段来逐步实施,分别为:
(一) 调研分析阶段:
从各系统业务特点出发,进行交易选取,需结合生产交易量、涉及资金流转及账务等维度来确定重要业务场景及其所涉及的交易;
基于各系统的自动化测试建设成果,进行自动化测试案例筛选,以覆盖交易数、案例规范性原则对自动化案例质量进行评估,剔除无效案例,保留优质案例;
最后以案例所用数据为依据,梳理测试铺底数据需求。需与交易组成的业务场景匹配,以能满足场景内各交易贯通式执行为基准。
(二)规划设想阶段:
在筛选交易和自动化测试案例的基础上,根据测试数据完备情况进行差异化规划,针对无数据支持或需特定数据的交易,通过将前置造数交易与资源池结合实现自动化造数,以满足自动化测试及批量开展测试数据准备的需求;对于存在基础数据,但无法满足业务场景完整执行的情况,则依据铺底数据需求,规划数据处理脚本按照处理逻辑进行排序,构建出能够匹配需求的铺底数据;
此后,在数据完备的情况下,以数据生命周期和业务领域整体逻辑和规则为指引,规划数据可循环使用的业务场景闭环建设。
(三)实施验证阶段:
开展自动化测试数据预埋及处理,验证方案的可行性和应用效果。交易在闭环中有起点有终点,而通过终点交易的处理又可使数据在闭环流转、使用过程中能回到原点;
确保前后交易的关联性,前置交易的输出需为后续交易的输入,从而实现预备的测试数据能在业务场景闭环中各交易流转使用。
(四)应用推广阶段:
以自动化测试效率提升方法研究的成果为基础,选择适用系统进行推广应用,验证方法的普适性和可推广性,进行经验总结与分享。
在进行适用系统选取的过程中,需基于以下3个原则来进行选取:
1、数据敏感性,系统对数据和会计日期敏感,对稳定性要求高;
2、业务完整性,对批量、外围系统的依存度低,可在本系统内实现完整的业务场景;
3、交易关联性,交易间关联紧密,且交易可撤销可解锁,利于数据的循环使用。
五、创新点
本项工作的创新点主要体现于将数据生命周期理论与业务场景闭环思想有机结合,将修改和新增的测试数据放入业务场景闭环中,使场景中各交易的输入输出前后串联;而数据在从起始交易到撤销、解除交易的场景中使用、流转的过程中又能恢复到初始状态,实现了数据循环使用,使自动化测试案例维护工作量得到明显压缩,自动化测试执行的效率得到较大提升,同时通过对研究成果的经验总结来指导自动化测试的建设,促进后续自动化实践进一步规范化、高效化。
六、应用推广效果
通过在投资理财领域的应用,使原有的日均交易量大于1000笔的135支交易的调试工作,从以往需投入4名测试人员各自调整135个数据,每次至少需调试50支交易,耗时5天完成,转变为仅需投入1人针对10个业务闭环,4款产品调试2天即可,节省人力投入20倍。
而在超级柜台、汇市宝领域中的应用则进一步提供了数据支持,在超级柜台应用中从以往需投入3名测试人员各自调试20个数据,每次至少调试20支交易,耗时4天完成,转变为仅投入1人对20支交易调试2天即可,节省人力6倍。而在汇市宝双向领域应用中从以往投入1名测试人员调试32个数据,每次至少调试38支交易,耗时3天完成,转变为仅投入1人针对8支交易调试0.5天即可,节省人力6倍。
七、结论及成果
通过在上述系统自动化测试过程中的运用,有效验证了数据生命周期理论与业务场景闭环思想结合,指导自动化测试建设的有效性和普适性,能够切实高效的提升自动化测试效率,释放人力资源,具备进一步推广应用的价值。
同时通过该项研究,形成了脚本集合表和闭环场景案例表,脚本集合表即是测试数据需求表,也是测试数据预处理步骤展示表及执行脚本汇总表,以此表来指导、规范测试人员进行闭环场景测试数据的预处理过程;闭环场景案例表则是各交易按照业务逻辑的先后顺序进行排列展示,并与自动化测试案例形成对应关系,起到记录并方便测试人员的查找使用的作用。
版权声明:本文出自51Testing会员投稿,51Testing软件测试网及相关内容提供者拥有内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像,否则将追究法律责任。