1、712023.08 中国金融电脑IT 实践IT Practice长期以来,工商银行充分发挥科技基础优势,通过高效保障应用系统的性能容量质量,致力于为广大客户提供更快速、更稳定的电子银行服务,并成功实现银行业务经营与信息系统建设协调稳定发展。本文聚焦性能容量领域,结合工商银行探索与实践,从建设性能测试标准体系、建立性能测试过程管理平台、研究自动化测试工具、制定问题缺陷分析机制等方面,详细介绍了工商银行在快速排除生产隐患、打破容量瓶颈等方面的创新经验。一、建立性能测试准入、验证及预警标准1.制定刚性标准与柔性建议当前,大规模应用系统的性能容量验证仍难以做到需求条目全覆盖,找不准、验不全等情况时有发
2、生。对此,工商银行通过制定刚性标准与柔性建议,力求做好性能验证的需求管理,并根据不同改造场景给出必选、建议选取等细化标准,以更加精准地定位性能测试范围。性能测试场景选取标准见表 1。2.建立性能容量统一验证标准性能测试指标通常与生产业务量、实际业务场景强相关,且应用系统性能表现也可采取多种手段进行约束。对此,工商银行通过建立性能容量统一验证标准,为性能实践过程提供了可靠依据。例如,对于联机测试场景,标准、敏捷与自动化摘要:“十四五”规划实施以来,工商银行坚持以终为始、以行为知,持续提升创新技术驱动能力和金融服务供给能力,积极探索高效保障应用系统性能容量的最佳路径,并搭建性能测试过程管理平台,在
3、实践中取得了良好成效。关键词:性能容量自动化;评价体系中国工商银行软件开发中心北京产品部可视应用系统特点与场景类型来确定性能测试标准,并优先选取 TPS 作为主要指标,并发用户数则选取以往此类交易满足 TPS 指标时的并发用户数作为参考值,同时遵循大于数据库最大连接数等原则,以及根据生产情况定期更新下限值,做到性能测试指标有据可依。3.设定预警条件性能容量验证具有非全面性的特点,同时应用系统的性能容量表现不具备相对持久性。对此,工商银行通过持续监控应用系统生产运行状态,制定预警条件,有效提升了生产敏感度,切实保障系统持续稳定运行。二、践行敏捷管理、敏捷设计1.敏捷管理,统一视图性能测试存在一定
4、的测试范围,而测试应用与场景则具有多样性的特点,且各版本均需依据实际情况进行分工与管理,易导致最终成本较高。对此,工商银行自主研发性能测试过程管理平台(如图 1 所示),通过推动性能测试需求系统化、测试指标标准化、测试记录与结果持久化,有效弥补了性能容量过程管理的薄弱环节,使管理效能提升了 60%。2.敏捷设计,细化要素传统模式下,鉴于测试设计文档的干扰因素较多,可能出现设计指向不明确、设计返工等问题,既低效又工商银行性能容量领域探索与实践72FINANCIAL COMPUTER OF CHINAIT PRACTICEIT 实践改造场景级别说明全新系统必选选取重点需求条目(影响范围大、业务量大
5、、秒杀、系统关键路径等)验证,需要进行单条目负载测试与疲劳测试版本升级必选操作系统、中间件、数据库等版本升级,应用系统版本升级例行化需求条目验证清单架构变化必选选取重点交易新增重点交易必选选取影响范围广、业务量大、秒杀、系统关键路径等需求条目验证新增外联应用必选首次新增外联应用系统调用时选取重点需求条目验证高并发或高 TPS 交易场景必选首次上线或交易逻辑变动较大时必选大数据批量场景建议选取根据数据量及时间窗口评估场景流程涉及多应用系统建议选取首次上线必选场景发生频次大幅提高建议选取活动推广类场景预估业务量大建议选取日均交易量百万以上使用第三方公司产品建议选取开展全流程回路验证,关注应用系统与
6、第三方产品交互节点涉及技术类改造需求条目建议选取异步改造、前后端分离等表 1 性能测试场景选取标准易遗漏。对此,工商银行选择通过细化要素来摒弃干扰因子,即在概要设计一级提纲下细化四级提纲,并对子提纲项进行设计内容的图 1 性能测试过程管理平台功能结构系统管理角色管理应用管理权限管理版本管理用户管理服务器管理服务器管理服务器分配性能测试管理看板服务性能测试看板服务器看板性能测试管理系统测试人员分配测试任务管理测试需求提交指导性说明;同时,通过统一测试案例骨架,建立不同场景类型的公共案例集合,支持测试工程师精准、高效地完成测试设计工作,显著提升了测试效能。三、提升性能容量保障水平性能测试一般包含调
7、试环境、准备数据、录制编写与调试脚本等过程,存在不支持 724 小时全天候测试的问题,因此会拉长平均测试周期。对此,工商银行通过将功能与性能容量自动化测试融合,将统一监控与无人值守性能容量测试相融合,将DevOps 流水线与性能容量测试相融合,构建了 724 小时测试实施能力,不仅大幅缩短了平均测试周期,也从根本上扩大了性能测试守护范围。实际操作中,性能容量测试主要采用了录制回放请求的方法,原理上与 HTTP 接口、RPC 接口等功能自动化测试相通。在此基础732023.08 中国金融电脑IT 实践IT Practice上,工商银行首先发布基于类自然语言的接口功能自动化测试工具,而后成功研究出
8、功能自动化案例自动 转 换 JMeter 性 能测试脚本的方法。在性能容量验证阶段,重点工作可分为测试实施与测试分析两部分,主要由无人值守测试完成自动化采集并保存测试现场。最终,结合 DevOps 理念中的价值流与流水线原则,工商银行高质量践行敏捷测试目标,达成了研发测试一体化串联。功能自动化转性能测试工具数据流程如图2 所示。四、构建测试管理评价体系人力资源管理是研发测试过程管理中的难点领域,测试工程师的技术能力与实施水平不仅关系到测试团队的和谐稳定,对性能测试的过程质量也有着至关重要的影响。为此,工商银行定期在团队内组织技术沙龙与交流活动,通过分析历史生产问题,总结各应用发现的性能测试难点
9、,不断从教训中汲取经验,在持续更新性能测试需求提交标准与测试场景挖掘标准等各项资产的同时,不断提升测试人员的技术能力和实施水平。此外,通过探索评价模型,工商银行结合工作产出(测试工作量、资产维护)、工作完成质量(测试过程质量、生产问题、工作完成时效)、工作创新性等多个维度,全方位量化奖惩标准,并确保所有评价指标均来自客观数据的采集与计算,做到了评价结果客观、公正、图 2 功能自动化转性能测试工具数据流程自动化案例更新检查自动化案例转换为性能测试脚本及场景自动化案例可用性检查展现测试结果对性能测试脚本进行12 和 21 验证性能测试场景执行性能测试结果案例转换配置文件全局配置文件接口自动化测试案
10、例性能测试脚本及运行场景测试案例转换组件自动化测试案例检查组件性能测试场景执行组件性能测试结果展现组件读取获取案例及环境配置读取读取获取读取生成生成验证通过生成扫描更新获取案例读取/更新透明,有效促进了测试团队的和谐、稳定发展。综上所述,通过建设性能测试标准体系,工商银行进一步夯实了性能测试基础;通过建立性能测试过程管理平台,为敏捷管理提供工具支撑,显著提升了敏捷设计效果;通过将自动化测试案例转化为性能测试脚本工具,使测试工程师可集中精力聚焦版本改造内容,大幅提升了研发效能;通过建立问题缺陷和经验教训分析机制,探索构建人员评价体系,培养了一支高效、团结的测试团队。基于上述一系列探索与实践,工商银行为业务稳定经营提供了可靠支撑与服务保障!参考文献:1 国际软件测试资质认证委员会,杭州笨马网络技术 优先公司.企业性能测试体系架构、落地指导与案例 解读 M.北京:机械工业出版社,2023.