1.用户定义的变量:通常用来定义变量,方便在接口中引用
1.1.定义变量中的随机数:RandomString(n,0123456789) n指的是生成随机数的位数,“0123456789”每一位随机数都是从中抽取
全部随机生成:${__RandomString(10,0123456789)}
部分随机生成:62148301${__RandomString(7,0123456789)}8
1.2定义变量中定义的常量:一般某个变量应用于较多位置时,采用变量替代,减少工作量
2.HTTP信息头管理器
2.1根据不同接口请求,调用不同的信息头
post键值对使用的参数为:Content-Type:application/x-www-form-urlencoded
json串:Content-Type:application/json
英汉同传:Content-Type:charset=utf-8
如果有header,cookie,token等不变的常量作为信息头,可以直接写入这个部件中。
3.HTTP Cookie管理器
目前仅学到一种就写一种,以后增多再加,欢迎各位备注:
变动的cookie传入后,引用cookie中的值,token,header,id等等参数时,保存cookie就用到这个部件,jmeter工具默认保存传入cookie的部件,设置成功后,可以使用保存:
设置如下:每次清除保存的cookie,使用默认模式
4.csv数据文件设置
常用于变量存储,以逗号隔开,文件样式如下:phone.txt文件包含2个参数,phone和idcard,使用时如下图
注:一般可以使用随机数替代phone等参数生成,或者通过beanshell生成真实数据
适用于,初学者:数据调用以及并发测试
5.“正则表达式提取器”与“jp@jc-JSON Path Extractor”
正则表达式:更适用于form表单的字段提取,也可以使用jp@jc-JSON Path Extractor来相互替换
jp@jc-JSON Path Extractor:对于json串中的字段提取有更方便的使用
如提取如下数据中的accNo字段:
如果提取如下字段中的jsonEnc字段:
6.JDBC Connection Configuration
数据库连接使用部件
7.JDBC Request
连接数据库后,调用数据库内信息
8.HTTP请求
post传参2种传参方式
key-value直接post传参:类似这种
参数拼接传参:类似这种
mobile=${phone}&smsCode=000000&password=${loginPW}&repeatPassword=${loginPW}&version=1.0&isFromMobile=false&sourceValue=&sessionId=1122334455&platform=pc&ipAddress=192.168.2.6
9.常用的BeanShell语句
prev.setDataEncoding("utf-8"); 设置编码格式
-----------------------------------------------------------------
addClassPath("D:/tools/apache-jmeter-4.0/testData/"); // 导入class文件地址
import hoomsun.GenMobile; //导入class文件
String mobile = new GenMobile().getMobile(); //创建新对象,new个对象赋值给mobile
vars.put("Mobile", mobile); //新对象数据传参
return mobile; //返回mobile参数
-------------------------------------------------------------------
addClassPath("D:/apache-jmeter-4.0/testData/");
import com.hoomsun.util.IdcardNo;
String[] idCard = new IdcardNo().genIdCard();
vars.put("IdcardNo", idCard[0]);
vars.put("gender", idCard[1]);
vars.put("birthday", idCard[2]);
vars.put("residence", idCard[3]);
return idCard[0] + " " + idCard[1] + " " + idCard[2] + " " + idCard[3]; //身份证号的创建过程
10.事务控制器
类似于域,或者分组,方便控制接口调用测试
注:测试过程中注意的点
1.响应断言设置时尽可能采用json格式获取
2.调试过程中,使用查看结果树中请求部分观看请求数据参数正确与否
3.接口文档不全的可以参照charles 或者fiddler抓包获取