2019独角兽企业重金招聘Python工程师标准>>>
JMETER实战分享
•一、如何使用JMETER压测LBM接口
•二、如何开展JMETER的接口关联测试
•三、如何使用JMETER实施分布式压测
一、如何使用JMETER压测LBM接口
步骤:
Ø 1 、 启动 Jmeter
Ø 2 、导入 bin 目录下的 lbm.jmx 文件
Ø 3 、以 lbm.jmx 这个测试计划为 模板进行修改
Ø 4 、修改引用 的数据 文件名
Ø 5 、修改 XP 的 配置
Ø 6 、 引用 的 数据格式如下:
Error_NO后面接:期待的返回码;
LBM_CODE后面接:LBM号,后面接LBM调用的连接串;
Ø 7 、修改日志路径
Ø 8 、运行结果
二、如何开展JMETER的接口关联测试
如何将上一个接口的返回结果作为下个接口的请求参数
Ø 1 、 首先 在线程组下添加两个 HTTP 请求
Ø 2 、在第一个 HTTP 请求下添加正则表达式提取器
Ø 3 、给第一个 HTTP 请求添加好 IP 地址,路径,端口号,协议,方法 ,参数
Ø 4 、启动 ,查看第一个 HTTP 请求完成后 的返回结果
Ø 5 、编辑 正则表达式提取 器
说明:
Ø ( 1 )引用名称:作为下一个请求要引用的参数名称,如 填写 cipherText , 则可用 ${cipherText } 来作 为第二个 HTTP 请求入参
Ø ( 2) 正则表达式 : 用于 将需要的数据提取 出来;如 第一个 HTTP 请求完成后 的返回结果 {“retCode”: 0 ,“retMsg”:“ 处理 完成 。 "," cipherText":"1821462976222014161406278 "}
需要cipherText的数据,所以正则表达式为 “cipherText”:“(.+?)”
() 表示括起来的部分就是要提取的。
. 表示匹配任何字符串。
+ 表示一次或多次。
?表示在找到第一个匹配项后停止。
Ø ( 3 )模板 : $1$ ,正则表达式可以设置多个模板来进行匹配,这里就使用第一个模板 。
Ø ( 4 )匹配数字: 0 代表随机取值, 1 代表全部取值,通常情况下填 1
Ø ( 5 )缺省值:如果参数没有取得到值,那默认给一个值让它取,通常情况下为空
6 、 给 第二个 HTTP 请求添加好 IP 地址,路径,端口号,协议,方法, 参数
Ø 7 、启动 ,查看这两个 HTTP 请求完成后的响应数据,可以看到第二个 HTTP 请求参数就是 第一个 HTTP 请求 的响应数据
三、 如何 使用 JMETER 实施分布式压测
• 1 、背景
• 2 、 jmeter 分布式原理
• 3 、 jmeter 远程启动配置
一、背景
• 在使用 Jmeter 进行性能测试时,如果并发数比较大 ( 比
• 如项目需要支持 3000 并发 ) ,单台电脑的配置 (CPU 和内存 )
• 可能无法支持,这时就需要使用 Jmeter 提供的分布式测试的功能。
二 、 jmeter 分布式原理
• 1 、客户端机器作为一个控制机,控制多台执行机的操作。
• 2 、控制机通过 GUI 界面启动执行机,将 jmeter 压测发送给每台启动的执行机,执行机获得脚本后开始执行。执行机本地不需预先存储脚本。
• 3 、各台执行机执行完成后,将结果传回给控制机,控制机收集整合显示。
jmeter 的分布式控 制图
三 、 jmeter 远程启动配置
服务器配置:
Ø 1 、执行机需 安装 jmeter ,最好 与 控制 机保持 同版本, jdk 最好也保持同 版本 。
Ø
Ø 2 、启动 bin 目录下的: jmeter-server.bat 。
Ø
客户端配置:
Ø 1 、在 客户端上要保证执行命令能发送到服务器,因此需配置客户端远程的 ip 地址和 port 。在客户端安装目录的 bin 文件夹下,找到 jmeter.properties ,修改配置如下 图;多个执行机的 配置可通过逗号分隔 。
Ø
Ø 2 、配置 完成后打开客户端 jmeter 的 GUI 界面,在运行 - 远程启动中即可看到自己配置 的执行机 IP 。
Ø
Ø 3 、 添加脚本 ,点击远程启动即可启动 运行执行机,运行完成后,在 服务器上可看到控制台 信息 。
Thank you