TECHNOLOGY_FRONTIER

>> 已收录 ${postCount} 项技术方案

性能测试四:业务场景(业务模型)

需求分析过程中确定的,具有代表性的接口或交易。至少占线上交易量的90%以上。
业务模型分析主要是为了得到更加真实模拟线上运行场景,保证测试的覆盖率。通过根据系统情况分为有业务数据参考(生产运行日志)和无业务数据参考两种情况。
 

一、有业务数据参考


①搜集生产上不同高峰时间段的业务种类和业务量,每个时间段的业务种类和业务量是否有很大的差异,如有的话,必须有多个业务模型,差异不大的,可以只用一个业务模型
②搜集生产上高峰时间段资源消耗和资源异常的时间点,从中捕获资源消耗高和异常的原因,可能是由于某种”不起眼”的业务导致。
③搜集生产问题进行分析,如果是由于某种业务导致而且以前性能测试的时候忽略此笔业务,那么这笔业务的风险是非常大的,需要后续性能测试将此业务加入到业务模型中。
 
常用的高峰时段业务数据采集方法
埋点采集:即在系统的各个节点,根据需要添加埋点,针对性的进行数据采集;
日志/数据库:通过日志服务(比如ELK)或者运维监控(现在很流行的Devops),采集分析数据;
Agent/探针:在需要采集的节点添加Agent/探针,实时采集,数据存入时序数据库(比如influxdb),实时展示;
 
注意事项
①采集对比的数据一定要采集线上的真实数据,这样才能反映真实客观的系统压力。
②容量测试环境的配置,一定要和线上保持一致(服务器数量可以不同,但配置尽可能保持一致)。
 
系统可按照表格的方式进行分析提取业务模型

 

二、无业务数据参考


 

通过与业务人员或者开发人员沟通,引导业务人员根据业务使用情况,进行业务模型的大概预估。
业务选取规则如下:
  • 使用比较频繁的业务(业务人员根据使用情况提供)。
  • 使用不是特别频繁但是交易涉及数据量比较大的业务(业务人员根据使用情况配合开发人员提供)。
  • 交易逻辑复杂比较高的业务(开发人员根据代码逻辑提供)。
  • 考虑当前交易量占比小,但未来5年业务会迅速发展的交易
  • 考虑在特与业务场景下可能大量集中爆发的交易,例如:年末、双11等
  • 考虑选取业务场景覆盖行内各种通讯协议,报文格式以及编码方式
  • 根据系统实际业务特点,可以选取多个不同的业务峰值场景
  • 考虑系统是否存在热点账户的业务场景
  • 考虑联机批量业务场景
  • 考虑文件处理业务场景
  • 考虑各系统在其他行生产出现过的性能问题
  • 考虑各系统产品在本行客户化改造中涉及底层改造的交易
  • 考虑各系统在本次项目实施过程中使用的产品新功能和技术
确认各业务占比:
  • 业务人员根据使用情况进行各选取业务比例预估。
  • 如果没有业务使用的话,可以参考同行(非功能测试人员根据相关进行建议并让业务确认)
posted on 2025-03-20 14:40  王元安  阅读(55)  评论(0)    收藏  举报