1、前期问题回顾
1)lr检查点技巧
* 使用检查点会消耗性能,数据库增改删操作可不用检查点,执行完后可直接在数据库查
* lr中尽量避免中文检查点,支持不太好
2)bbs环境问题处理思路
* 检查lampp进程是否还在,若在杀死重新启动
原因:程序启动后,就会存储各进程的pid到pid文件中,程序停止的时候,就会从pid文件中删掉这些pid,由于非正常关机导致旧的pid没有被删掉,下次再启动的时候,pid文件里还有对应进程,系统就认为程序已经启动,就不再启动,从而导致启动失败。
* 检查防火墙是否已运行:service iptables status
* 检查网络能否ping通
3)Lr脚本为什么要加事物
记录开始结束时间,不加事物就没有tps和响应时间
2、常见性能测试场景
1)基准测试
概念:1个vu跑
目的:①验证接口本身是否有问题、②作为参考标准
2)单场景测试
概念:一个请求或一个业务(如,新建bug)
压测时长:一般压10-15分钟就好
3)混合场景
概念:多个接口混在一起压测,一般压10-15分钟就好。
目的:①排除业务间影响②排除数据库、线程间死锁
4)稳定性场景
概念:n*12小时,下班压
目的:①看是否有内存泄漏②排除GC影响
5)极限测试
概念:各指标中有一个达到瓶颈,如CPU达到80%
不成文规定:给出压测标准,压满足后,再测试一个极限,避免以后背锅
3、进入压测controller方法
方法一:Tools-->Create Controller
方法二:Run Load Tests
4、Global Schedule设计
5、Scenario Schedule
1)New Scenario
Group模式用于多个接口一起跑的情况,设置下个接口什么时候开始执行
2)Start Time
6、负载
1)怎么添加负载机
方法一:负载机下拉框,点击Add
方法二:点负载机图标添加
2)百分比模式
百分比模式下,可以将一个接口的负载机分布到多台机器上
①设置百分比模式
②负载机设置
3)组模式
组模式下,一个组只能选择一个负载机
4)分布式
①lr分布式
脚本、参数化文件放主控机上即可,主控机会自动将脚本、参数化文件分发到负载机上;当参数化取值策略为唯一时,由lr自动为每个负载机分发不同的参数。
负载均分
②jmeter分布式
脚本不需要拷贝到负载机,但参数化文件需要拷贝到负载机的同名路径下;当参数化取值策略为唯一时,必须人工切割参数化文件,为每个负载机划分不同的参数化文件;负载机跟主控机版本一致
③Lr分布式,负载机添加不上可能原因
* Agent没启动
* 防火墙没关
5)修改设置
双击负载机,可修改设置,可修改负载机、脚本、运行时设置,也可刷新场景运行时设置
7、集合点
脚本中使用了集合点,可以设置集合点策略