2023年召开的中央金融工作会议强调要推进金融高质量发展。银行业积极响应要求,坚持核心技术自主可控,加快利用新质生产力推进数字化转型。银行软件的专业性和复杂性使得银行软件系统上线后可能面临种种风险,而软件测试作为防范软件风险的重要手段之一,对测试效率和测试质量也提出了更高要求。佩企科技凭借多年金融测试服务经验,助力金融客户提质增效,赋能金融业高质量发展。
数字化转型加速
银行业自动化测试平台的探索与 重构
2016年,伴随信息技术的飞速发展,国内银行业开始步入数字化转型的快车道。某银行在持续推动科技赋能、夯实基础开发平台的同时,基于开源软件进行自动化测试的接入探索,并且完成了初代自动化测试平台建设。2021年,鉴于原有自动化测试平台技术架构陈旧、用户体验不佳,该银行启动了自动化测试平台的重构建设项目。佩企科技凭借在银行业软件测试领域长期沉淀,以丰富的金融测试服务经验和技术积累从一众合作伙伴中脱颖而出,吸引了客户的关注,帮助客户搭建自动化测试框架及规范。
挑战凸显
自动化测试难题与应对策略
随着信息系统规模的日渐增大,系统结构越来越复杂,系统间耦合度增高。该行业务需求呈井喷式增长的同时,对交付时间的要求也越来越高,对测试团队的质量保证与测试效率的要求也在不断提高。传统模式的功能测试已不能满足高质量、快交付的需求。主要表现为以下3方面:
· 测试范围溢出导致的额外工作量不容忽视。现代金融业务因其高复杂度,金融要素相互交织,使得银行系统架构复杂多变,跨系统交互频繁。这直接导致测试范围和边界难以精确界定,从而可能造成测试资源的浪费性扩大。同时,测试质量也面临挑战,难以确保全面而准确;
· 在全流程测试的过程中,人工测试的效率往往显得不尽如人意。随着银行业务的日益复杂化,越来越多的长链路交易流程出现在我们的日常工作中。在这种情况下,人工测试在数据准备、业务验证等各个环节的效率都显得相对较低。由于人工测试需要大量的人力和时间投入,因此在面对银行数字化转型形势下的快速响应需求时,显得力不从心;
· 在快速迭代的开发模式下,回归测试往往会过度消耗宝贵的资源。随着敏捷开发思维在银行体系中的广泛应用,迭代周期逐渐缩短银行的部分系统已经实现了以“周”为单位的迭代频率。这种高频的业务系统发版和迭代过程,要求开发团队频繁地执行回归测试,以确保每次迭代后的系统仍然能够正常运行。然而,这种频繁的回归测试导致测试资源不断重复消耗,给测试团队带来了巨大的压力和挑战。不仅耗费了大量的人力和时间,还可能导致测试资源的浪费;
为了切实解决测试工作的痛点,提高测试的效率和质量,该银行与佩企科技开展深入合作,佩企科技提供包括技术咨询,管理咨询及专业人才等多项专业服务。项目入场后,测试团队先后多次与佩企科技进行交流、学习和研讨。在指导下通过问卷、座谈等多种形式,对行内业务、开发、运维等条线开展调研,进而制定了测试体系建设路线和方案,提出了“做强功能测试,做实性能测试,全面探索自动化测试全场景落地”的整体目标,明确了“规范流程、构建框架、试点先行、逐步提升”的实施路径,全面启动测试自动化体系建设,破解测试中的短板。
佩企洞察:随着信息系统的日益庞大和复杂,银行业正面临前所未有的挑战,传统的测试方法已难以满足快速迭代和高质量交付的需求。银行业必须拥抱变革,通过构建更为智能和自动化的测试框架,以提高测试的覆盖率和效率,确保软件质量的同时降低成本和风险。这不仅是技术层面的挑战,更是对银行整体运营模式和战略思维的一次深刻考验。
构建高效测试团队
自动化测试框架选型与流程优化
测试体系的建设需要“人+机制+工具”的结合,缺一不可。为此,该银行在选拔抽调行内现有技术人才的同时,也从佩企科技提供的雇员中优中选优,形成“内外”结合的一体化测试团队,开展测试框架选型。
· 健全体系:重点关注测试流程体系的风险、质量、效率,结合测试资源、系统建设目标等情况。加强事前风险把控与质量检查,简化测试交付物与测试流程,全面规范与精简了测试流程,根据系统的风险等级制定不同的测试管理手段。同时,针对自动化测试与性能测试制定管理规范,丰富测试手段,从多角度对需求与系统进行验证;
· 制定标准:佩企科技通过深入调研及评估,根据该行实际情况,帮助明确测试框架的目标,按照需求匹配度、学习成本、维护成本、推广成本等多维度制定评测指标,通过内部研讨、专家评估等多种方法,完善评估指标体系;
· 框架选型:佩企科技协助客户对自动化测试工具、开源工具(如Selenium,Appium,Robot Framework等)进行试用,验证其可安装性、可维护性、可扩展性、兼容性,从测试数据准备、测试脚本编写、测试用例执行、测试报告生成全流程对工具进行测试;
· 结合客户场景,综合选型评估。通过该行手机银行App、信贷系统、ESB系统等试点项目,佩企科技测试了不同工具在UI自动化、接口自动化方面的适用性、易用性和可维护性。同时,结合该行自动化测试定位与目标,从时间投入、人力投入与工具成本3方面综合对比,形成《自动化测试工具对比分析报告》交付客户。
案例实录:经过综合比较,Robot Framework开源框架具备高易用性、高可读性和高扩展性的优点,该行决定以其作为自动化测试框架基础。通过与Selenium结合实现UI自动化,与Requests结合实现接口自动化,使用Jenkins统一调度管理自动化测试项目,并通过二次开发拓展基础功能,丰富自动化测试框架对不同类型与协议的接口进行测试的能力,搭建了一套适合自身系统的自动化测试框架。
创新驱动测试效能
自动化测试框架的构建与实践
佩企科技以提升客户研发过程的测试效能为目标,坚持效用为先,努力突破创新,精心打造了一套高质高效、智能灵活的自动化测试框架。
· 明确“分层、封装”的设计理念。鉴于自动化测试有较高的技术要求,其案例与功能测试案例之间存在着天然的可读性差异。为此,该行测试团队在佩企科技技术专家协助下,以分层设计、封装服务为设计理念构建自动化测试框架。分析自动化测试要素,封装为服务接口,实现了测试脚本的低代码甚至无代码开发,提高了测试脚本的可读性,极大解放了测试生产力;
· 构建低代码的UI测试平台。佩企科技将页面元素、页面操作与测试用例进行分层,把页面元素与页面操作封装成“业务元操作”,测试用例层使用自然语言描述自动化测试用例,即可获得自动化测试脚本。这使得自动化测试人员专注于脚本编写,功能测试专注于业务功能,实现了低代码UI测试脚本开发;
· 实现自动化的接口测试平台。将接口自动化分为报文构造层、数据维护层、结果比对层,并封装为不同的服务,从而解决复杂的测试脚本编写过程。使接口自动化测试人员完全脱离代码编写,只需关注测试用例的测试数据组合。通过这项服务,接口测试人员可直接获得可维护的报文结构体,后续的组合报文、发送报文、接收返回报文、比对预期结果等操作,都将由自动化测试框架封装的各个服务来完成,从而实现了低代码或无代码的自动化测试脚本开发。
协同提升测试效能
自动化测试的精专实践与效能优化
在咨询服务过程中,佩企科技根据该客户自动化测试工作扎根于系统特征与测试需求的特点,不断优化流程并创新适配架构过程中,为客户测试工作提供强有力的支撑。通过对UI和接口自动化测试平台的构建,帮助客户测试团队形成自动化测试框架体系,并进行了大胆创新。通过封装自然语言的“业务元操作”,提升自动化测试脚本的可读性和可维护性,极大地降低了测试用例层编写难度,提升了测试效率。创新了接口测试的数据驱动模式,可独立维护测试脚本的每个字段,提高了测试脚本的可读性与可维护性,降低了接口测试脚本的编写与维护难度,以及对测试人员的技能要求,大幅提高了测试脚本的编写效率。目前在部分项目中,自动化测试技术已经逐步成为主要测试手段。需求完成速率提升20%,平均缺陷发现率由6.3%上升至8.5%。通过打造配套测试管理工具与测试知识库,功能测试实现需求案例一体化跟踪管理的同时积累了大量业务知识资产与测试资产,为测试资产复用以及实现需求测试一体化奠定基础。最终通过建设自动化测试平台,使得UI、接口、性能等测试环节的自动化处理实现了“从0到1”的演进。目前改行的自动化测试已覆盖个人网银、企业网银UI自动化测试案例3000余个,功能覆盖率超过70%。接口自动化测试覆盖了重要的交易系统,极大地助力了研发效能提升。
客户数据管理部相关负责人表示:“佩企科技在自动化测试框架选型和搭建项目上确实帮我们解决了一些实际问题。测试团队现在能更集中精力在关键测试上,而不是被繁琐的手动操作分散注意力。虽然在实施过程中遇到了一些挑战,但整体上,测试效率的提升和缺陷检测的准确性都有所改善。这让我们对项目的长期发展更有信心。”