测试结论从什么结果开始
并发测试应该用多少用户才合理?首先需要把“目标负载下核心链路稳定”写成可判定的结果。这里讨论的是活动高峰容量,一个需要验证的风险是拿注册人数代替同时活跃人数。仅看到页面操作顺利还不够,测试记录必须能说明业务结果是否真实发生,以及失败时是否留下了不该产生的影响。
性能问题要把等待拆成网络、处理、排队和外部依赖。平均耗时会掩盖少量非常慢的请求,样本还应覆盖忙时和较大数据量。
复现时保留哪些证据
本题需要保存忙时会话、动作比例和峰值记录。把一次正常操作和一次异常操作放在相同版本、相同环境下比较,记录输入、操作时点及实际结果;敏感值可以替换,但触发问题的字段关系不能删掉。若无法重新出现“拿注册人数代替同时活跃人数”对应的差异,先补足样本,暂不把猜测写成已确认根因。
先在可控环境记录基线,再只改变一个条件;比较相同操作的耗时分布、错误数量和资源使用,不只比较首页打开速度。
执行三个针对性检查
第一项是估算真实负载,将判定口径写清楚后执行。第二项是阶梯增加并发,同时保存忙时会话、动作比例和峰值记录中的相关记录。第三项是明确停止条件,对照“目标负载下核心链路稳定”逐条确认。三个检查应分别记录结果,这样失败时可以知道问题出在输入、处理中还是结果核对,避免一次修改多个环节后失去判断依据。
用边界例子发现遗漏
并发模型应写出浏览、查询和支付的比例。每个模拟用户无限快速点按钮,会偏离真实使用负载。
例如:多数用户浏览,少数同时支付。这个例子不是客户项目事实,而是用于测试活动高峰容量的样本设计。先写下按业务规则应该发生什么,再执行并比较;不能用程序当前表现反过来定义正确结果。修复后还要重跑原样本,并检查附近的合法操作仍然可用。
压测需要限定并发和停止条件。生产系统没有授权或恢复准备时,先使用隔离环境和脱敏数据复现。
怎样算验收通过
验收应能够证明:目标负载下核心链路稳定。结果附上环境、版本、样本和记录位置;异常提示、持久化结果与相关后续动作应互相一致。若“多数用户浏览,少数同时支付”仍能触发错误,就应列为未解决事项,并说明影响范围。测试通过不代表以后永不出错,后续变更至少保留这一问题的回归样本。
执行与验收清单
- 明确活动高峰容量的正确结果:目标负载下核心链路稳定。
- 准备并脱敏核对资料:忙时会话、动作比例和峰值记录。
- 执行估算真实负载,保留对应结果。
- 完成阶梯增加并发与明确停止条件,核对实际产物。
- 使用“多数用户浏览,少数同时支付”复查问题,并记录未解决事项。