下载地址:https://jmeter.apache.org/download_jmeter.cgi JMeter的最新版本为5.4.3,这里我使用的也是JMeter5.4.3的版本
下载后为压缩包,解压后可直接使用 需要注意的是我们在运行JMeter的前提条件是需要搭建好Java的环境
Windows系统中,启动JMeter在该安装文件夹下bin目录的jmeter.bat文件,需要使用管理员的身份运行,否则我们在后面保存测试用例的时候就会提示没有权限保存 在linux&mac系统在,启动JMeter在bin目录下的jmeter.sh文件
添加测试用例
请求头的添加
HTTP信息头管理器是填写请求头的地方,它在配置件的组件里面
响应数据的查看
演示
接口文档 POST /WebServices/MobileCodeWS.asmx HTTP/1.1 Host: ws.webxml.com.cn Content-Type: text/xml; charset=utf-8 Content-Length: length SOAPAction: "http://WebXml.com.cn/getMobileCodeInfo"
<?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <getMobileCodeInfo xmlns="http://WebXml.com.cn/"> <mobileCode>string</mobileCode> <userID>string</userID> </getMobileCodeInfo> </soap:Body> </soap:Envelope>
HTTP/1.1 200 OK Content-Type: text/xml; charset=utf-8 Content-Length: length
<?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <getMobileCodeInfoResponse xmlns="http://WebXml.com.cn/"> <getMobileCodeInfoResult>string</getMobileCodeInfoResult> </getMobileCodeInfoResponse> </soap:Body> </soap:Envelope>
测试用例
首先我们需要了解简单控制器能解决什么样的问题, 当我们的测试集合中有好几个测试用例的请求参数格式时,在执行的过程中,JMeter只会根据排序的第一个请求参数格式来处理后面所有的请求参数,所以需要简单控制器来把请求参数格式不同的测试用例分开 简单控制器-->测试合集右键单击-->添加-->逻辑控制器-->简单控制器
测试集合的层级关系
plugins是插件的意思,jmeter-plugins-manager-1.6.jar是jmeter的插件管理,把该文件放在JMeter安装目录下的lib下的ext的目录下
JMeter插件管理jar包下载地址:https://files.cnblogs.com/files/blogs/713119/JMeter%E6%8F%92%E4%BB%B6%E7%AE%A1%E7%90%86jar%E5%8C%85.rar
安装插件的步骤: 1、在选项中点击插件管理 2、在available plugins中,搜索需要安装的插件,然后勾选 3、点击Apply Changes and Restart JMeter 4、安装成功后,JMeter就会重新启动 5、安装成功的插件就会显示在installed plugins
添加方式:在配置元件里面, 主要价值:我们可以把请求地址填写在HTTP请求默认值里面,后面的接口就不需要填写请求地址了,相当于全局变量,后期方便管理
使用
动态参数: 1、使用后置处理器中的正则表达式提取器 2、使用后置处理器中的JSON提取器 什么是后置处理器? 后置处理器值的是测试用例执行结束后,专门来处理执行后的事情
动态参数的设置
a a