性能day6
1.正则表达式提取器,三个步骤“1.复制粘贴”,“2.对内容添加括号”,“修改括号中的内容”
不变的东西当成边界,变得东西提取出来
$1$ 代表第一个括号里面的值,获取多个值,添加多个正则表达式提取器
边界提取器
2.循环控制器,两次。循环次数和线程组次数是独立的
3.if控制器,数字和非数字的区别if控制器一般放在环境配置里面,仅一次控制器放在登录、注销
4.仅一次控制器,只执行一次
5.ForEach控制器
if控制器一般放在环境配置里面,仅一次控制器放在登录、注销
从userList中获取数据
post-1接口中应用数据
添加聚合报告
lable是名称,样本是次数,平均值:时间*(毫秒),中位数(50%响应时间),最小,最大也是响应时间,异常(错误),吞吐量指的是TPS,
吞吐量一样,是以为在同一个线程组里的请求,tps肯定是一样的。响应时间不一样
6.tcp接口
ACCll码表
添加响应断言
将 TcpServer放在文件路径下进行启动
7.jmeter中添加cookie管理器,处理cookie
手动添加cookie和域 没有登录接口的时候,直接添加
添加token
添加信息头,手动获取token
文件路径,参数名称,以流的形式上传
文件参数化
id是几取决于文件的id
判断body大小进行断言
大于等于本地文件大小
添加多列可进行多个文件上传
添加固定定时器
延时3秒俊熹 2020-03-22 15:59:04
执行10次
定时器在内部只对当前请求起作用,放到外面对所有请求有作用
同步定时器相当于集合点
常用定时器最高的控制,其他的不控制
webservise接口
添加手机号,userid为空
添加type类型
jdbc接口 ip,端口号,数据库名
设置配置信息
编写sql语句
预编译
参数化和字段类型
预编译
用两个变量接收
超时时间
脚本要用就加上变量
Beanshell
beansehll 内置变量
log打印日志
get接口中进行返回数据
post3场景中进行应用
//获取响应信息
String data = prev.getResponseDataAsString();
//获取data
String code = prev.getResponseCode();
//log.info("获取到的响应信息:"+data);
log.info("获取到的响应码为:"+code);
//现获取库存值,获取接口返回的库存值
//这个myStock是从json断言当中进行获取的
String myStock = vars.get("myStock");
log.info("获取的接口返回信息是" + myStock)
//进行类型转换
int iStock = Integer.parseInt(myStock);
if (iStock) > 500{
vars.put("buyNUm","50");
}else{
vars.put("buyNUm","5");
}
添加beanshell前置处理器获取数据
加密函数代码编写
在测试计划中添加jar包
导入jar包中的方法
beanshell断言代码