统一测试管理平台,塑测试质量提升之路
2019-09-10颜富甲
颜富甲
背景
随着福建省农村信用社联合社(以下简称“福建农信”)业务及科技项目的快速发展,各个项目的测试工作量也与日俱增,手工测试、自动化测试、性能测试如果各自为战、各有一套管理系统,势必影响测试效率,给测试管理、执行工作带来一定的负担,也不利于测试工作的统一管理。并且,随着福建农信互联网手机银行、微信银行、移动金融平台的陆续上线,移动金融渠道的快速发展也给移动端的测试工作带来一定的挑战。因此,一套实现手工测试、自动化测试、性能测试一体化管理的测试管理平台势在必行,并支持定制化开发、集成移动端,以适应移动互联网业务的发展。
随着各个系统的持续上线,测试工作量日益增加,统一的测试管理平台势在必行。测试管理平台作为测试阶段的主导型平台,直接负责与测试过程相关外部系统对接,参与测试全过程管理,采集测试全过程数据,汇总测试全过程成果,实现测试的全流程管控。
测试管理平台介绍
1. 概述
测试管理平台建设包括平台端、自动化客户端、移动端。平台端实现测试的全流程管理,自动化客户端实现自动化测试案例的分析、设计、执行,移动端实现移动端测试项目的案例执行、缺陷提交。通过对手工测试、自动化测试、性能测试的一体化管理,实现测试的全流程管控,提高测试效率,提升项目质量。
2. 测试管理平台介绍
测试管理平台实现资源管理与测试管理两大功能,并打通与项目管理平台、统一用户平台、农信通、移动金融平台等系统对接,提升管理效率和测试质量。
(1)平台功能介绍
平台功能包括资源管理与测试管理两大功能模块,资源管理实现基础资源及测试资源的管理,测试管理实现测试项目、测试任务、缺陷的管理。如图1所示。
资源管理实现基础资源管理和测试资源管理。基础资源管理实现用户、角色、菜单权限的配置化管理,可依据不同用户角色定制化配置不同的菜单权限;测试资源管理主要是针对测试案例资源,对测试资源做统一管理,建设了案例资源池,只要在资源池中的案例,满足一定条件都可以在各个项目组共用共享,即取即用,可以是手工测试,也可以是自动化测试。同时,通过提取具备可复用、可服务于所有项目案例执行的测试资源形成标准案例资源,为测试资产沉淀提供功能支持。
测试管理是对测试工作的具体管理,包括了对测试的项目、任务、缺陷的管理,并且还包括了性能申请流程在内的性能测试管理、测试报表统计、消息管理等功能。测试管理是对具体测试执行过程进行的全流程管理,也是测试人员使用最多、频率最高的功能模块。测试人员按照“建任务-引资源-分配执行”的三步走步骤即可实现测试任务的执行。在执行过程中对发现的缺陷进行提交流转,依据缺陷的不同状态、不同的角色人员权限控制具体缺陷字段的可读可写权限,以达到规范控制缺陷流转的目的。最后,测试管理模块中还提供了丰富的测试报表统计数据,根据测试案例、缺陷及度量指标衡量项目测试质量,以实时监控项目的测试情况。
(2)平台架构部署
测试管理平台也实现了与行内多个管理系统的对接,平台架构部署如图2所示。与统一用户平台、密钥管理系统对接实现用户的统一登录管理,这样与行内包括外包管理系统整个对接起来,人员实现统一规范管理,包括用户入场时,根据申请分配测试管理平台权限,退场时自动取消权限,这样针对平台的用户管理就与行内的整个外包管理流程衔接起来,人员管理更规范更统一。
与项目管理平台对接实现两个同步,一是从项目管理平台同步测试项目信息以及项目成员信息等,通过后台自动同步,无需专人负责。第二个同步是测试管理平台同步测试报表数据给项目管理平台,通过Restful API方式提供统计报表接口,调用方实时调用显示,实现与各关联系统之间的数据共用共享,也便于QA人员实时审查项目测试情况。
农信通是行内的沟通工具,测试管理平台与农信通对接主要实现消息流转的提醒功能,比如说测试任务下发、缺陷流转农信通提醒到对应的人员,提升消息的传达率以及处理效率。
移动金融平台是行内管理类系统移动端的统一集成平台,测试管理平台的移动端也集成在移动金融平台上,包括移动端测试任务执行、移动端缺陷提交功能,适应包括手机银行等在内的移动互联网项目的测试需求。
以上是测试管理平台与行内关联的管理类系统对接情况。平台本身是包括了平台端、自动化客户端、移动端。平台端实现管理功能,包括手工测试、自动化测试的一体化管理,以及手工测试任务执行、性能测试申请等功能。自动化客户端的部署方式为自动化客户端上连测试管理平台,下连执行机执行自动化测试任务。自动化客户端是包括了分析、设计、执行的三大块功能,可以实现手工案例跟自动化案例的共用共享,即可以引用手工案例资源进行自动化测试,也可以引用自动化案例进行手工测试,实现测试资源的有效整合;测试管理平台通过下发自动化测试任务到自动化客户端,客户端通过连接多台执行机完成自动化测试案例的并发执行。当下发的任務中有引用案例时,自动化测试人员只要完成案例设计即可进行自动化任务的测试执行;当任务没有引用案例时,需要进行业务分析、案例设计,方可进行自动化测试案例的执行。
(3)平台网络部署
测试管理平台的网络部署图如图3,包括2台Oracle数据库服务器,3台WAS应用服务器,以及一台处理截图和附件请求的文件服务器。
手工测试的请求在Web端发起,通过F5负载均衡设备在三台应用服务器之间实现负载均衡;自动化测试由于需要在某一时间段内多台执行机高并发的执行,因此把自动化交易请求定向到指定的第三台应用服务器;当自动化测试在执行的时候,通过F5可以实现手工测试请求均衡到相对空闲的服务器1跟2,当自动化没有在执行时,即可在三台应用服务器实现负载均衡。通过以上策略可优先保证手工测试的交易请求,提升执行效率的同时提升用户体验。