jmeter脚本录制

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系统环境变量:

【变量名】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代理服务器,设置目标控制器为测试计划>线程组>简单控制器;分组为:每个组放入一个新的控制器。端口号可以修改也可以不修改,保持与浏览器代理中设置的端口号一致便可。

jmeter脚本录制

配置http代理服务器

3、选择HTTP代理服务器,选择Requests Filtering,添加排除模式,输入“.*\.(js|css|PNG|jpg|ico|png|gif|woff|bmp).*”

jmeter脚本录制

4、下载并安装浏览器代理插件SwitchyOmega,具体操作步骤参考https://jingyan.baidu.com/article/219f4bf7a0b737de442d38e8.html

5、点击地址输入框旁浏览器代理插件SwitchyOmega图标,设置浏览器代理(代理服务器设置本地,代理端口与jmeter的端口号保持一致)


jmeter脚本录制

6、在auto switch中添加切换规则(第一条默认的可不修改,直接添加第二条,条件设置输入域名或ip地址,情景模式选择刚刚设置的proxy,点击左侧应用选项就保存好了)

jmeter脚本录制

7、点击代理插件,选择auto switch(设置完成后,浏览器会根据用户访问的不同地址选择不同的代理)

jmeter脚本录制

8、点击http代理服务器中的启动按钮

9、浏览器访问目标地址,输入用户名密码等操作

10、点击http代理服务器中的停止按钮,脚本已录制完毕,存储在简单控制器中

注意:如果录制时打开页面出现如下页面:

jmeter脚本录制

解决方法:

打开cmd命令行,访问chrome安装目录,输入chrome.exe --disable-web-security

三、调试脚本

1、对登录账号设置参数化

新建一个txt文档,按照接口中所需参数,在txt文档中输入登录的账号密码,不同参数之间用英文逗号隔开(如下图所示)

jmeter脚本录制

在登录请求上点击右键,选择添加——配置元件——CSV Data Set Config

jmeter脚本录制

在CSV Data Set Config填写配置信息,filename填写新建的txt文档存储的地址,variable names填写变量名

jmeter脚本录制

选择登录接口,在body data中,修改登录name和password为变量,格式为${变量名},变量名称与CSV Data Set Config中设置的变量名一致

jmeter脚本录制

2、添加断言

在登录请求上点击右键,选择添加——断言——响应断言;

选择响应文本,匹配规则选择包括,添加要测试的模式,输入"status": "succeed"(具体响应内容根据实际接口响应结果调整);


jmeter脚本录制

3、添加cookie管理器

在简单控制器下上点击右键,选择添加——配置元件——HTTP Cookie 管理器;

勾选“每次反复清除cookies”;

4、添加查看结果树

在简单控制器上点击右键,选择添加——监听器——查看结果树;

运行后结果如图


jmeter脚本录制

5、如果接口的url中需要拼接用户id等(比如删除用户),需要先对响应结果进行正则匹配,再进行参数化。此处以删除用户为例,具体操作如下:

①在获取用户id的接口下点击右键,添加——后置处理器——正则表达式提取器


jmeter脚本录制

②按照样例设置引用名称、正则表达式、模板、匹配数字及缺省值(无匹配结果时显示的内容)

jmeter脚本录制

③选择删除用户接口,将原先固定的id值,设置为刚刚正则表达式提取值里的引用名称(也就是你设置的变量名称)

jmeter脚本录制

④运行,在查看结果树中查看运行结果,此时删除的id是在正则表达式提取值中设置的指定id

jmeter脚本录制

附常用的正则表达式字符:

jmeter脚本录制

jmeter脚本录制

四、导入脚本

如果有已调试好的脚本,需要执行,直接点击操作栏打开按钮,选择需要导入的脚本。如果导入前当前脚本未保存,会有弹窗提示是否需要先保存脚本。

导入已调试好的脚本,可以直接运行,查看结果。