背景
近几年,各家商业银行均在大力发展自动化测试。在这一进程中,自动化测试的设计理念不断完善,新的技术不断应用,使得自动化测试资产的积累代价和维护代价不断降低,自动化测试资产的数量不断增长。
在短短几年间,自动化测试资产的数量已从数千增长至数万乃至数十万。
商业银行的自动化测试平台所管理的自动化测试案例往往数量庞大、隶属于不同的系统,自动化测试对象类型各不相同,这就要求对商业银行的自动化测试平台支持多种对象类型的自动化测试,尤其对文件对象管理及文件对象自动化测试提出了更高的要求。
文件类对象自动化测试为测试步骤中需要上传或下载具体文件。文件类对象往往被认为是“不适合自动化测试”,主要有以下几个难点:
一、文件类对象的存储问题;
二、回归执行自动化测试案例时文件加载问题;
三、文件更新后,自动化测试案例的批量修复问题。
自动化测试资产的大幅增长和回归频率的显著提升,对自动化测试平台的执行能力提出了更高的要求,并发执行成为必然选择。特别是在高并发的场景下,文件类对象的自动化测试难度进一步提高。
为解决这一难题,本文提出一种高并发场景下文件对象的自动化测试解决方案。
方案详细介绍
总体来讲,本方案将文件对象平台化集中管理,再基于自动化测试平台的执行机执行集群,将测试平台生成文件唯一URL转换为本地路径,将文件下载至执行机本地从而执行测试脚本,提升了文件对象的大规模执行效率,降低了文件对象的维护及管理成本,高效地支撑商业银行自动化测试任务。
文件对象平台化集中管理
自动化测试平台提供统一的入口供用户上传管理文件,每个文件上传之后会生成唯一的文件URL,见图1。只需要把平台生成的URL填写在案例对应的字段中即可。
如果上传的文件有更新或者要编辑,只需从自动化测试平台中重新上传更新后的文件即可,URL不会更新,自动化测试案例无需维护。
用户不需要登录每个执行机去上传、更新、编辑要上传的文件,执行机扩充也不需要单独再维护上传文件,大幅度提升了测试执行效率,降低维护成本,具有很高的灵活性。
图1 文件上传管理
执行机集群自动转换文件路径
当执行机集群接收到平台发起的案例执行任务之后,会将案例中填写的平台生成的URL自动转换为本地路径。
执行到案例上传文件这一步骤时,会将文件从平台服务器下载至执行机本地,执行案例脚本,完成文件上传脚本的执行,执行结束后将执行结果传回至测试平台。
文件路径更新之后,执行机内置程序无需变动,直接更新本地路径下载文件。
执行机集群实现平台URL转变为本地路径对用户是透明的,用户只需在测试平台入口上传更新文件,从而减少用户操作流程,简化文件对象自动化测试步骤。
文件对象自动化测试
本方案通过文件集中管理的方法及配套的多并发执行机集群自动实现文件URL转化,将文件唯一URL转换为执行机本地路径,执行自动化测试脚本时,会自动化实现文件对象的上传及下载,从而满足高并发场景文件对象的自动化测试。
整个自动化测试过程中,用户和执行机群是解绑的,用户不用登陆执行机做任何操作。整个文件自动化测试流程为见图2:
图2 文件自动化测试流程图
本方案的优点
本方案将文件对象集中平台化管理,测试人员可将需要上传的文件通过统一入口上传至平台,平台为每个文件生成唯一的URL。
测试人员不需要登录每台执行机维护文件,执行机增加后不需要对新增的执行机做任何操作,文件维护更新也仅需要在平台重新上传文件。
降低了文件对象开展大规模自动化测试的维护成本,降低了测试人员的工作量。
本方案设计的执行机集群自动转化文件路径的方法,将平台生成的文件URL自动转换为执行机本地路径,执行机执行测试脚本时会从本地路径自动下载上传文件。文件路径更新之后,执行机内置程序无需变动,直接更新本地路径下载文件。简化了文件对象自动化测试步骤,更加灵活。
本方案设计的文件对象自动化测试方法,使得测试人员在平台一次性上传文件,执行机执行自动化案例时便可以自动实现文件的下载及上传。通过简单的文件上传操作与配套的执行机集群自动化转化文件路径机制,便可实现大规模的文件对象自动化测试。
最后:
可以到我的个人号:atstudy-js,可以免费领取一份10G软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!其中包括了有基础知识、Linux必备、Mysql数据库、抓包工具、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试等。
这些测试资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!