目录
2、获取token,静态获取:用户变量中设置,过期后每次都更新为最新的token。
jmeter各个元件要熟悉使用方法,性能测试,场景设计结合工具使用,快速压测找接口拐点。
一:脚本实际输出主要场景总结:
1、批量用户跑接口:
预置1w条数据,通过访问登陆接口,获取到token,并将登陆账号和token同时记录到csv文件中,作为下个接口的入参;
下个接口,获取csv文件的参数,并把token作为下个接口的header里的token值。
这样访问接口的用户每次都不同。
单用户跑接口,普遍比批量账号跑接口会快。
如果想发现接口的性能问题,接口需要单独压测,如果是模拟用户的操作场景,可以将多个接口放到一个线程组中。
2、获取token,静态获取:用户变量中设置,过期后每次都更新为最新的token。
动态获取,需要用到beanshell处理器,
用户登陆后,json提取器提取token值,beanshell后置处理器:
String accesstoken1=bsh.args[0];
print(accesstoken1);
prop.put("变量名例如Token2",accesstoken1)
在线程组外,设置beanshell前置处理器:
String Token2= prop.get("Token2");
log.info(Token2);
vars.put("变量名例如Token2",Token2);
二:性能问题定位方法:
在代码中查找耗时长的方法:用arthas工具,
常用命令:trace 包名+类名 方法名 “#cost>毫秒数”;
抓javacore的包分析:
jstack -l `jps |grep -v jps|awk -F '' '{print $1}'`. >>javacore.txt
三:性能问题,查看性能指标及相关命令:
cpu:命令 top,top -H -p pid;vmstat 查看r的数量远大于cpu核数就