一、CSS/JQurery提取器
作用:允许用户使用CSS选择器语法从服务器HTML响应中提取值
二、JSON提取器
2.1作用:适用于返回值是json的接口
2.2配置:
a.运行接口测试后查看结果树中选json path tester
b.表达式$..session(提取session)
c.添加json提取器
.Names of:输入变量名
.Json path:输入提取的表达式
.Match:提取0随机,-1全部,n取第n个
.踩坑:-1提取不了的时候,试试1
.Default Valuers:缺省值
d.引用变量${session}
2.3举例:
$..data.list[0].id可以取ID是35761
{ "error": "",
"message": "",
"data": {
"list": [
{"id": "35761",
"name": "图片标注(21808)-38328/1592910587-执行"},
{"id": "35762",
"name": "图片标注(21808)-38328/1592910587-审核"},
{"id": "35763",
"name": "图片标注(21808)-38328/1592910587-质检"},
{"id": "35764",
"name": "图片标注(21808)-38328/1592910587-验收"}]}}
2.4踩坑:浏览器F12-network-preview-想要定位的数据右键-copy property path即可效果如7.2.3
三、正则表达式提取器
3.1作用:适用任何返回格式
3.2配置:
a.引用名称:变量名
b.正则表达式:"session".{(.*?)}
"session":{取的是花括号里的值}
(.*?)代表提session里所有内容
c.模板 $1$,0是所有,n取第n组
d.匹配数字:0随机,-1全部,n取第n个
e.缺省值:没找到返回填写提示,找到返提取值
f.引用变量${session}
3.3举例:
a匹配所有数字:\d+
四、边界提取器
作用:允许用户使用左右边界从服务器响应中取值
五、JSR223 PostProcessor
作用:允许在取样后应用JSR223脚本代码
六、JDBC PostProcessor
作用:可以在运行示例后立即运行一些SQL语句
七、XPath2 Extractor
作用:该测试元素允许用户使用XPath2查询语言从结构化响应-XML或(X)HTML中提取值
八、XPath提取器
8.1作用:适用于返回值是HTML或XML的接口
8.2HTML或XML关联配置:
a.勾选Use Tidy和quiet
b.引用变量名:存提取名字的变量
cxpathquery:xpath表达式//title
(提取参数格式 //要提取的参数 )
c.匹配数字:0随机,-1所有,n取第n个
d.缺省值:没找到返回填写提示,找到返提取值
e.引用变量${title}
九、结果状态提取器
作用:如果相关采样器失败,则该测试元素允许用户停止线程或整个测试
十、BranShell PostProcessor
10.1功能之一:提取返回值到文件中
import java.io.FileWriter; import java.io.BufferedWriter; FileWriter fstream = new FileWriter ("D:\\jmeter\\session",true); BufferedWriter out = new BufferedWriter(fstream); out.write(vars.get("session")+"\n"); out.close(); fstream.close();
备注:例如登录,如果第一个接口循环登录后要把token存放起来给下个接口当参数
原文:https://www.cnblogs.com/zhangnanpeng/p/13615663.html