1、使用http cookie manager获取登陆接口响应头中的cookie值,cookie引用变量名正确,但获取到的cookie没有生效,仍然报错401 原因:bin目录下的jmeter properties文件默认cookiemanager.save.cookies=false,获取到的cookie值没有被保存 解决:将该行注释去掉,改成cookiemanager.save.cookies=true
2、批量运行登陆接口获取一批有效的cookie数据,登陆账号和密码正确且不重复,但获取到的部分cookie始终已失效 原因:使用了2000个账号和密码,持续运行5min,导致这部分账号和密码循环使用,造成部分生成的cookie被覆盖 解决:线程组中的loop count不设置为-1,而是设置成次数,按照次数运行,保证每个账号生成唯一的cookie
3、使用csv数据文件保证脚本参数化,但是从依赖文件中获取的uid等字段值不对,仍然是uid等参数名 原因:依赖文件首行设置了参数名,而在csv设置中忽略首行选择了false 解决:当依赖文件首行设置了参数名时,csv数据文件设置中忽略首行选择true;依赖文件首行没有设置参数名,csv设置选择false
4、coding平台运行jmeter脚本,执行压测时任务构建结束,脚本跑不起来 原因:脚本中使用了csv数据文件,在coding平台上执行时文件路径写错了:jmeter/xxx.csv 解决:将路径改成/jmeter/xxx.csv,这里是绝对路径
5、coding平台运行jmeter脚本,压测结束后grafana面板看不到压测数据 原因:本次项目压测集群配置了多个命名空间,只有defalut下配置了grafana监控面板,因此除了defalut以外,其余命名空间下执行的结果不显示 解决:将后端监听器中的influxdbUrl从http://jmeter-influxdb:8086/write?db=jmeter更改为:http://jmeter-influxdb.default:8086/write?db=jmeter
6、两个不同线程组下的后端监听器设置了百度1和百度2的值,运行后grafana面板中全部的压测结果都展示在百度1中,百度2中的数据为空 原因:jmeter中的一个坑!源码中是按照“后端监听器”这个名称来判断监听器是否运行(而不是其设置的值),由于每个线程组下默认都是一致的,因此不主动改这里的名称就会导致全部的监听数据混合在第一个里面 解决:不同的后端监听器设置不同的名称,例如:后端监听器-1:百度1,后端监听器-2:百度2等
7、脚本依赖文件过大无法上传至coding平台,通过git上传文件,push时总是报错:rejected 原因:远程库和本地库的代码不一致导致 解决:在执行push命令前,把远程库中的更新合并到本地,执行如下命令:git pull --rebase origin master
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。