1、设计测试场景
性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标满足需求定义的检验活动。一般有以下场景:
- 基准场景:单接口少量并发用户下压测,评估单个功能点性能。
- 负载场景:逐步增加并发用户,测试系统最大承受能力。
- 稳定性场景:长时间持续施加稳定负载,检查系统在长时间运行下的性能稳定性。
- 异常场景:模拟异常条件,如突然大量用户涌入、资源耗尽等,评估系统在极限条件下的表现和恢复能力。
此外还有混合场景:多个功能接口,同时按照比例并发测试。
2、loadrunner的混合场景
新建场景,勾选按照百分比设置
添加多个脚本,根据百分比分配并发数。例如个人10*50%=5个并发
3、jmeter的混合场景
- 多线程组设置比例
每个线程组是一个业务,每个设置不同的线程数。其它设置要一致。
- Jmeter 线程组的并行与串行
测试计划中的执行顺序遵循:setUp 线程组 -> 线程组 -> tearDown 线程组
如果将测试计划中的独立运行每个线程组勾选上,则多个线程组串行执行,否则并发执行。这里不勾选
- 吞吐量控制器设置比例
允许用户控制后代元素的执行的次数。有两种模式:执行百分比和指定总数;吞吐量控制器不会影响取样器的 TPS,但会控制其内部逻辑的执行次数
Based on(基于总迭代次数):
Total Executions:按照次数来执行;当小于或者等于0时,则不执行,且勾选Per User对该模式有影响
Percent Executions:按照百分比来执行;Per User勾选或不勾选都不会影响该模式
吞吐量(Throughput):
对于 total executions:代表执行的总次数
对于 percent execution:0-100,代表执行次数的百分比,比如填 50,代表一半迭代中执行
Per User:
勾选:每个线程会单独计算执行频率
不勾选(默认):所有线程统一计算执行频率
例如:个人70%,单位30%,10并发结果。
- 权重控制器(bzm - Weighted Switch Controller)
分配其子项目(Child Item)的权重,从而控制子项的执行概率。
2并发10迭代,结果如下。
只是概率分配,不一定准确,同时迭代次数少分配与设置更加不符。