一、安装
1、jmeter安装需要java环境,需要先安装jdk并配置环境变量
jdk下载地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
jdk安装与环境变量配置参考https://jingyan.baidu.com/article/6dad5075d1dc40a123e36ea3.html
2、jmeter安装(建议安装3.3版本,4以上版本界面有变动,以下教程截图均来自3.3版本)
下载地址:http://archive.apache.org/dist/jmeter/binaries/
配置Jmeter环境变量:
按下面变量名和变量值配置Jmeter系统环境变量:
【变量名】JMETER_HOME
【变量值】F:\CYL\test\jmeter\apache-jmeter-3.0(根据实际的jmeter解压路径填写)
【变量名】CLASSPATH
【变量值】%JMETER_HOME%\lib\ext\ApacheJMeter_core.jar;%JMETER_HOME%\lib\jorphan.jar;%JMETER_HOME%\lib\logkit-2.0.jar;
3、双击jmeter解压目录下bin文件夹下jmeter.bat文件,运行meter
二、录制脚本
1、在测试计划下添加threads——线程组,线程组下添加逻辑控制器——简单控制器;在工作台添加——非测试元件——http代理服务器。
2、选择HTTP代理服务器,设置目标控制器为测试计划>线程组>简单控制器;分组为:每个组放入一个新的控制器。端口号可以修改也可以不修改,保持与浏览器代理中设置的端口号一致便可。
3、选择HTTP代理服务器,选择Requests Filtering,添加排除模式,输入“.*\.(js|css|PNG|jpg|ico|png|gif|woff|bmp).*”
4、下载并安装浏览器代理插件SwitchyOmega,具体操作步骤参考https://jingyan.baidu.com/article/219f4bf7a0b737de442d38e8.html
5、点击地址输入框旁浏览器代理插件SwitchyOmega图标,设置浏览器代理(代理服务器设置本地,代理端口与jmeter的端口号保持一致)
6、在auto switch中添加切换规则(第一条默认的可不修改,直接添加第二条,条件设置输入域名或ip地址,情景模式选择刚刚设置的proxy,点击左侧应用选项就保存好了)
7、点击代理插件,选择auto switch(设置完成后,浏览器会根据用户访问的不同地址选择不同的代理)
8、点击http代理服务器中的启动按钮
9、浏览器访问目标地址,输入用户名密码等操作
10、点击http代理服务器中的停止按钮,脚本已录制完毕,存储在简单控制器中
注意:如果录制时打开页面出现如下页面:
解决方法:
打开cmd命令行,访问chrome安装目录,输入chrome.exe --disable-web-security
三、调试脚本
1、对登录账号设置参数化
新建一个txt文档,按照接口中所需参数,在txt文档中输入登录的账号密码,不同参数之间用英文逗号隔开(如下图所示)
在登录请求上点击右键,选择添加——配置元件——CSV Data Set Config
在CSV Data Set Config填写配置信息,filename填写新建的txt文档存储的地址,variable names填写变量名
选择登录接口,在body data中,修改登录name和password为变量,格式为${变量名},变量名称与CSV Data Set Config中设置的变量名一致
2、添加断言
在登录请求上点击右键,选择添加——断言——响应断言;
选择响应文本,匹配规则选择包括,添加要测试的模式,输入"status": "succeed"(具体响应内容根据实际接口响应结果调整);
3、添加cookie管理器
在简单控制器下上点击右键,选择添加——配置元件——HTTP Cookie 管理器;
勾选“每次反复清除cookies”;
4、添加查看结果树
在简单控制器上点击右键,选择添加——监听器——查看结果树;
运行后结果如图
5、如果接口的url中需要拼接用户id等(比如删除用户),需要先对响应结果进行正则匹配,再进行参数化。此处以删除用户为例,具体操作如下:
①在获取用户id的接口下点击右键,添加——后置处理器——正则表达式提取器
②按照样例设置引用名称、正则表达式、模板、匹配数字及缺省值(无匹配结果时显示的内容)
③选择删除用户接口,将原先固定的id值,设置为刚刚正则表达式提取值里的引用名称(也就是你设置的变量名称)
④运行,在查看结果树中查看运行结果,此时删除的id是在正则表达式提取值中设置的指定id
附常用的正则表达式字符:
四、导入脚本
如果有已调试好的脚本,需要执行,直接点击操作栏打开按钮,选择需要导入的脚本。如果导入前当前脚本未保存,会有弹窗提示是否需要先保存脚本。
导入已调试好的脚本,可以直接运行,查看结果。