银行手机APP软件做性能测试吗,浅谈银行开放平台应用系统性能测试
随着银行主机应用的陆续下移,开放平台应用的数量和规模均呈上升趋势,应用系统性能的高低不仅影响着系统上线后的稳定运行,更关系着银行的声誉。性能测试作为应用系统上线前性能把控的最后一道关口,其重要性不言而喻。本文针对性能测试过程中的存在的问题,梳理并研究开放平台应用系统性能测试方法和技术,明确了性能测试过程重要环节的工作策略,目的在于指导性能测试工作开展,进而提升性能测试质量。
1. 现状分析
近年来,各商业银行均组建了专业的测试团队承担性能测试工作,工作规范度日益加强,但由于银行开放平台应用系统具有规模大、交易量大、数据量大、技术架构和软件多样化、关联系统复杂等特点,性能测试工作仍存在一些问题。一是测试范围缺乏合理的筛选机制,导致重要交易可能未纳入测试范围;二是通过准则的制定依赖于开发人员和测试人员的项目经验,与实际情况可能存在较大差异;三是测试环境配置以完成测试任务为目标,与生产环境差距较大,无法有效模拟生产系统运行情况;四是场景设计风格各异,直接影响了测试质量;五是性能调优经验未能有效的传承,导致重复问题解决耗费时间较多。基于以上情况,规范性能测试过程,传承历史测试经验,对性能测试工作上的开展尤为重要。
2. 实施策略
2.1 筛选测试交易范围
筛选测试交易范围应结合测试目标和项目范围,明确系统和关联系统的交易列表,分析用户量或交易量分布情况、交易复杂度、数据量,再根据交易特性评分表(如表1所示)对交易进行评分和排序,最终结合测试周期、工作量投入情况以及业务增长趋势等确定性能测试范围。
表1 交易特性评分表
其中,生产环境有应用监控的系统应获取生产环境交易的用户量、交易量及数据量,新系统或生产环境没有应用监控的系统应预估交易的用户量、交易量及数据量;交易复杂程度的可根据交易的表操作和外部调用计算,计算公式为交易复杂度=交易的表操作*0.1+外部调用*2。
2.2 制定测试通过准则
2.2.1 联机交易
联机交易的性能测试通过准则应包括但不限于并发用户数或TPS、响应时间、成功率、资源利用率。其中,经营管理类应用系统等交易量较小的系统,宜以并发用户数作为通过准则;网银、掌银、线上支付等交易量较大的系统,宜以TPS作为通过准则。在制订各项指标时,应采集交易系统日均交易量、峰值交易量、响应时间等生产监控指标,并结合业务预期进行评估,制订各项指标通过标准。
① 并发用户数估算可按实时在线用户数的10-20%估算,或通过公式C=nL/T、计算(C是平均的并发用户数;n是login session的数量;L是login session的平均长度;T值考察的时间段长度;是并发用户数峰值)。
② TPS宜采用二八原则(指80%的日均交易量在20%的时间段内完成)或峰值交易量计算的最大值。
③ 普通联机交易基准响应时间推荐在500ms以内,接口类交易基准响应时间推荐在50ms以内;并发响应时间可参照非功能需求的相关指标制定,接口类联机交易推荐在500ms以内,非接口类普通联机交易推荐在1s以内,非接口类复杂联机交易推荐在3s以内。
④ 成功率应在99.6%以上。
⑤ 资源利用率参照生产环境上资源利用率的监控策略制定,例如:CPU利用率不超过80%,不存在内存溢出等。
测试环境不能完全匹配生产环境资源配置时,并发用户数或TPS、响应时间等指标应根据测试与生产环境的比例关系进行调整。
2.2.2 批量程序
批量程序的性能测试通过准则应包括但不限于批量节点号/节点名称/批量程序名称的处理数据量/生成数据量、并发子节点数、批量程序执行时长、成功率和资源利用率。
执行时长应符合批量程序要求的时间窗口,成功率应为100%,资源使用率参照生产环境上资源利用率的监控策略制定。
2.3 环境配置
环境配置涉及部署架构、软硬件配置和测试数据三个方面,各方面的具体配置要求如表2所示。
表2 环境配置要表
2.4 场景设计
测试场景应结合应用系统特点、测试目标、测试类型以及生产系统运行情况进行分析并设置,测试类型主要分为压力测试、负载测试、对比测试、容量测试、配置测试和高可用测试。
联机交易测试场景一般应包括基准测试、单交易负载测试和单交易/混合交易疲劳测试场景,涉及系统架构调整、基础软件升级、系统配置参数调整等情况应进行对比测试,对比测试场景应包括单交易/混合交易疲劳测试场景。其中,单交易负载测试/混合交易负载测试可按需增加阶梯负载测试;待测交易为单个交易时,疲劳测试场景可执行单交易疲劳测试场景;混合交易疲劳测试可加入背景交易模拟系统的实际运行情况,混合交易配比应根据各交易的交易量和响应时间来确定。常用测试场景描述如表3所示:
表3 常用测试场景表
批量程序测试场景应根据并发节点数设置基准测试和并发测试,铺底数据量与生产环境差距较大时推荐进行对比测试。
2.5 性能调优
性能调优推荐按照“硬件-网络-系统配置参数-应用程序-系统架构”依次进行分析、调优,各调优项的关注点如表4所示。
表4 性能调优关注点
3. 结束语
本文围绕开放平台性能测试执行过程中的五个重要环节,给出了具体的实施策略和技术要求。进一步研究方向包括:一是梳理应用系统类型,按照应用系统类型和交易类型细化性能测试方法;二是建立性能指标监控平台,集中监控操作系统、中间件、数据库性能指标及应用性能指标,提高性能指标获取和性能调优的自动化水平;三是探索云测试技术,利用云端的测试服务来进行更高效的测试;四是研究挡板工具和交易日志回放技术,提升性能测试的专业化水平。
版权声明:本文出自《51测试天地》第五十四期。51Testing软件网及相关内容提供者拥有51testing.com内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像,否则将追究法律责任。
银行手机APP软件做性能测试吗,浅谈银行开放平台应用系统性能测试相关推荐
- 银行手机APP软件做性能测试吗,20家农村商业银行个人手机APP评测:CPU占用率差距最大可达32倍 流量消耗成重灾区...
为持续跟踪和检测手机银行APP的兼容性和易用性等方面的表现,为行业发展提供有益参考,中国电子银行网联合CFCA兼容和性能测试平台对20家农村商业银行客户端进行测试.今年测试范围首次加入IOS系统,与安 ...
- 银行数据仓库体系实践(20)--浅谈银行数据仓库发展趋势
整个系列的文章从银行数据仓库架构,ETL,模型,数据管理以及几大方面应用介绍了数据仓库,可以让大家对银行数据仓库有个概要的了解,但在各子系统设计,技术方面没有太深入介绍,后续也会陆续补充.作为这个系列 ...
- 银行手机APP安全评估报告【转载】
猫头鹰工作室 我不相信命运,但尊敬命运 主页 大数据 Kafka Spark Hbase Redis Flume ActiveMQ 渗透测试 方法论 Kali测试 APP安全 OWASP 脑图 Too ...
- 想开发手机APP软件,首先要弄清楚以下10点
当今互联网时代,手机app软件开发已经成为时代的潮流,企业想开发自己的专属手机软件APP,却不知道怎么去和手机软件开发公司谈合作,更不知道一款手机APP开发需要经历哪些流程,因此,达不到各取所需的成效 ...
- 如何开发手机APP软件?
一门APP开发平台能做APP嘛 1.可靠的.专业的在线app开发平台可以满足中小企业的基本功能,而且制作出来的app非常专业,也可以拿来进行使用,如应用之星,就是采用控件式操作方式,菜鸟也可以制作出来 ...
- 怎么DIY快速制作一款手机App软件?
随着APP软件的普及,越来越多的企业以及个人都加入创建自己的APP应用软件,现在我们来分享一下如何DIY快速制作一款手机App软件. 市面上有很多DIY App制作工具,它们普遍使用的是拼装式.这样的 ...
- 数字经济时代下老年群体手机APP软件网络推广适老化需求日益明显
随着"3·15"国际消费者权益日的来临,曝光了一系列虚假诱导.泄露消费者信息等企业品牌或商家,在"3·15"晚会上指出老年人使用手机更应该注意安全陷阱,避免因为 ...
- 安卓手机软件开发_无代码手机app软件开发,让人人都是专业开发工程师
点击上方蓝色字关注我们~ 近期,谷歌发布了自己的无代码在线app开发平台,这款全新工具旨在让任何一个人都可以轻松进行手机app软件开发.这样的动作无疑指引着安卓软件开发的未来.
- 医疗器械小程序或手机APP软件开发方案
提供海内外高品质医疗器械 医疗器械市场国内近几年发展速度加快,但是与发达国家的部分医疗器械产品仍存在一定的差距,为给用户提供高品质多元化医疗器械产品,企业通过小程序或手机APP软件除了为用户提供国内先 ...
- 制作一个手机APP软件需要拥有哪些资质证明?
移动互联网+商业时代的井喷期已至.在你的事业蓝图中,是否早已打算好开发制作一个属于自己的APP应用平台呢?那么,在制作APP前应该有哪些准备工作,今天小编就带您了解一番,制作一个手机APP软件都需要拥 ...
最新文章
- c语言程序代码_10道C语言笔试模拟题,来看看你掌握的怎么样?
- 【Android】Java回调原理并结合Android源码进行理解
- 自定义曲线_完美动力小课堂:AnimationCurve(动画曲线编辑) 如何使用?
- Python的交互式界面 编写 .
- 【Wordpress】分享500多款国外WordPress经典主题 其之三
- [react] 说说你对reader的context的理解
- 四、操作系统——读者写者问题(详解)
- sql azure 语法_Azure Data Studio中SQL代码段
- django-debug-toolbar 工具
- 如何提高WEB程序的效率
- windows jdk8
- hdu 6638 Snowy Smile
- 神经网络基础知识--感知器,S型神经元,梯度下降法,神经网络架构
- Linkerd 2.10(Step by Step)—设置服务配置文件
- 30分钟完成pandas入门
- [软考]挣值管理EVM详细解释及应用,实例讲解收集(信息系统项目管理师-成本管理)...
- Hive常用函数大全
- 如何通过命令行查找一个IP的地理位置信息
- DBN的浅显易懂解释
- 服务器添加二级域名网站教程,服务器添加二级域名