Jmeter测试工具-测试基础(4)-参数化及控制器等
一:jmeter中参数化
参数化:是指把请求中的请求参数的常量变为变量,即静态参数实现动态加载
参数化方式:
1,CSV 数据文件设置
2,用户定义的变量(参数一般当做全局的)
3,函数助手:例如:_rodmon
1,CSV 数据文件设置
1,文件名为存放参数文件的路径 例如C:/Users/MI/Desktop/练习/css选择器知识.txt,注意路径中最好不要出现中文名的文件
2,文件编码:UTF-8 (一般情况)
3,变量名称:csv文件中的变量(位置关系一一对应,多个变量用英文逗号隔开)
4,线程共享模式:当前线程组
其他栏位信息不变,填写完毕,在对应的请求中把参数变为变量,引用变量${}
2,用户定义的变量(一般全局的参数用此方式)
3,函数助手:例如:_rodmon
一 参数化函数:
CSV文件读取:${__CSVRead(D:\data.txt,0,)}
随机数:${__Random(1,100,)}
随机字符串:${__RandomString(8,abcdefghigklmnopqrstuvwxyz0123456789,)}
时间戳:${__time(,)}
生成唯一UUID:${__UUID}
注:上述函数都可以将结果保存到一个变量里,函数的最后一个参数为变量名称
1.1 函数:CSV文件读取
1.2 csv文件参数化:添加CSV Data Set Config :线程组→添加→配置元件 → CSV Data Set Config
二:聚合报告
Throughput
吞吐量——默认情况下表示每秒完成的请求数(Request per Second)
对于接口测试来说,Jmeter里的吞吐量=TPS
三 :插件的使用、
使用Jmeter插件可以扩展Jmeter的功能
插件官网: http://jmeter-plugins.org/downloads/all
使用Jmeter插件管理器,可以自动下载并安装插件,更加方便简单
几个好用的插件:
1> 3 Basic Graph:windows下可用的实时tps和响应时间的插件
2> Custom JMeter Functions 扩展函数
3> Random CSV Data Set Config 随机csv文件参数化
4> PerfMon 服务端性能实时监控插件
四:控制器
常用的逻辑控制器
1、循环控制器:可以设置该控制器内的sampler执行的次数,循环次数与线程的循环次数各自独立
2、if控制器:根据判断条件决定是否执行该控制器内的请求,如果是字符串比较条件,参数和字符串
都需要加引号
条件格式:
${__jexl3(条件表达式)}
如:${__jexl3(${num} > 10)}、 ${__jexl3(“${num}” == “10”)}
3、仅一次控制器:该控制器内的请求只执行一次,无论线程循环多少次
4、foreach控制器,可以遍历某个参数数组,循环获取数组中的参数
常用的后置处理器
JSON提取器
json路径表达式:https://github.com/json-path/JsonPath
正则表达式提取器
三步走
1、拷贝目标数据和左右边界
2、把目标数据用括号括起来
3、把目标数据用.+?代替
调试取样器可以打印出来Jmeter运行过程中保存下来的参数,需要配合查看结果树使用
定时器
固定定时器
设置一个固定的sleep时间
同步定时器
Jmeter里的集合点,并发会在此停留,等待指定的线程数达到时,再进行下一步操作
常量定时器
控制请求的TPS,按照分钟控制,比如设置为6000,就是控制最高TPS为6000/60=100
五:上传文件及下载
上传:
◼ POST请求,勾选 use …for post
◼ 同请求一起发送文件里,填写文件名称,参数名称
◼ MIME类型: application/octet-stream
下载:
普通GET请求
热门相关:地球第一剑 第一神算:纨绔大小姐 别那么骄傲 大神你人设崩了 刺客之王