48
入功能号进行压测。执行压力测试过程中要开启测试环
境监控,通过CPU使用率、网络使用率、输入输出延迟
等指标实时判断压力测试异常情况,并及时记录压力测
试过程中各项数据。
2.4.4 测试总结
每次压力测试结果会以报告的形式作为测试资产留
存,为后续性能评估、系统扩容等工作提供参考。生产
环境实际运行中的异常性能表现也会对压力测试起到正
向的反馈作用,为分析现有压力测试管理工作中的缺陷
提供了现实依据,同时在改进压力测试工作后也能避免
更严重的系统故障的发生。
2.5 测试内容
测试内容包括配置业务场景、选取压测样本、置备
测试数据、记录测试数据。
为了保证压力测试的有效性,选取的压力测试场景
必须真实反映实际生产业务调用情况。中信建投证券压
力测试的业务场景参考真实的生产业务数据,采样近一
个月交易系统的调用情况,根据业务调用的实际占比调
整压力测试模型。
压测样本由若干条测试用例组成,每个测试用例包
含必要的入参,如订单功能需要客户号、股东代码、股
票代码、买卖类型、委托金额、委托手数等。压力测试
平台会顺序选择测试用例并根据业务比例循环发起系统
调用。
不同业务场景对应不同的数据置备方法,如模拟系统
初始化后测试需要将订单表和成交表清空,而模拟业务
高峰期时的测试则要根据实际生产情况对订单表和成交
表进行装载后再开始压测。
测试数据包括吞吐量、延迟、资源消耗、稳定性等
方面,根据“指南”的标准分类,中信建投将压力测试
指标进行了规范,具体内容见下表。
应用系统变更升级前会对所有功能号进行四种不同
的压力测试,分别为全功能测试、主要功能测试、单功
能号基准测试、业务突发模拟测试。全功能测试即是将
实际生产中发生的所有业务进行全覆盖测试,通常会涉
及到上百个功能号,该测试优点是尽量模拟生产系统的
所有业务情况。主要功能测试则是将生产环境占比前
99%的功能号纳入到测试范围,将调用功能号个数减少
到40以内,该测试基本可以反应出实际生产情况。单功
能号基准功能测试为每个功能号分配固定的压测时长,
根据配置的用例,逐个压测功能号,用于测试每个功能
号的基准性能情况。业务突发模拟测试是在主要功能测
试的基础上,逐个将某一业务量配比提高3倍,观察其对
系统性能的影响。
除了常规压力测试之外,日常压力测试工作还包括若
图3:压力测试流程(KCXP为消息中间件) 表1:测试指标
ITRDC证券信息技术研究发展中心(上海)