软件性能测试指标是衡量软件性能的关键依据,编写测试用例时需结合具体业务场景和需求。以下是常见指标及编写方法:
一、软件性能测试指标
- 1、响应时间
-
- 定义:系统对用户请求作出响应所需的时间,包括网络传输、服务器处理、数据库查询等环节。
- 示例:网页加载时间、API接口响应时间,理想值一般小于2秒(国内标准)或遵循3/5/10原则(国外标准)。
- 2、吞吐量(TPS/QPS)
-
- TPS(每秒事务数):单位时间内系统处理的完整业务事务数量。
- QPS(每秒查询数):单位时间内服务器接收的查询请求次数。
- 示例:电商系统每秒处理的订单提交数量、搜索引擎每秒处理的搜索请求量。
- 3、并发用户数
-
- 定义:同时向系统发起请求的用户数量,分为绝对并发(同一时刻)和相对并发(同一时间段)。
- 示例:在线游戏同时在线玩家数量、银行系统同时进行转账操作的用户数。
- 4、资源利用率
-
- CPU占用率:系统或应用占用CPU资源的比例,一般建议不超过70%。
- 内存占用:应用运行时占用的内存大小,需关注内存泄漏问题。
- 磁盘I/O:单位时间内磁盘读写数据量,繁忙率超过70%可能成为瓶颈。
- 网络带宽:单位时间内网络传输的数据量,需确保带宽充足。
- 5、错误率
-
- 定义:系统处理事务时出现错误的概率,如HTTP状态码非200的情况。
- 示例:接口调用失败率、页面加载错误率,理想值应极低(如≤0.1%)。
- 6、稳定性指标
-
- ANR率(应用无响应率):主线程阻塞导致应用卡顿的概率,一般要求≤0.1%。
- 系统崩溃率:在长时间运行或高负载下系统崩溃的频率。
二、性能测试用例编写方法
- 1、明确测试目标与场景
-
- 结合业务需求,确定核心功能和高频操作场景,如电商的下单流程、社交软件的消息发送等。
- 分析系统在正常、峰值和异常负载下的表现。
- 2、设计测试用例结构
-
- 用例编号:唯一标识每个用例,便于管理和跟踪。
- 用例名称:简洁描述测试场景,如“并发用户下单测试”。
- 前置条件:测试前需满足的条件,如数据准备、环境配置。
- 测试步骤:详细描述操作流程,包括输入数据、执行动作等。
- 预期结果:明确各指标的预期值,如响应时间≤2秒、TPS≥100。
- 实际结果:测试执行后记录的实际数据。
- 测试结论:判断用例是否通过,分析性能瓶颈或异常原因。
- 3、覆盖不同负载场景
-
- 正常负载:模拟日常用户使用量,验证系统基本性能。
- 峰值负载:模拟业务高峰期的用户量和请求量,测试系统极限承载能力。
- 异常负载:如网络中断、高延迟、大量并发请求等,检验系统的容错性和稳定性。
- 4、结合自动化工具
-
- 使用JMeter、LoadRunner等工具模拟用户行为,生成测试脚本。
- 配置性能监控插件,实时采集CPU、内存、网络等指标数据。
示例用例模板
| 用例编号 | 用例名称 | 前置条件 | 测试步骤 | 预期结果 |
|---|---|---|---|---|
| TC001 | 并发用户登录测试 | 数据库初始化完成,服务器正常运行 | 1. 启动JMeter,配置100个并发线程模拟用户登录;2. 执行测试,持续10分钟 | 响应时间≤2秒,TPS≥50,错误率≤0.1% |
通过以上方法,可系统地设计性能测试用例,确保软件在不同场景下满足性能要求。