news 2026/4/16 15:04:49

Jmeter进行http接口测试,这一篇就搞定

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Jmeter进行http接口测试,这一篇就搞定

jmeter-http接口测试脚本

jmeter进行http接口测试的主要步骤(1.添加线程组 2.添加http请求 3.在http请求中写入接口的URL,路径,请求方式,参数 4.添加查看结果树 5.调用接口,查看返回值)

针对接口添加header在如下途径添加:

jmeter做http接口测试添加cookie:

3.jmeter-webservice脚本

进行webservice测试的一般步骤

1、在soapui中新建已经soap项目,导入wsdl地址,获取到请求报文、SOAPAction和请求url(在soapui的raw中能找到)

2、打开jmeter新建一个线程组

3、新建一个SOAP/XML-RPC Request

4、把url、soapaction和请求报文写到soaprequest中5、调用接口、查看返回值)

4.jmeter-参数化

参数化的作用:调用接口入参时。有时要求参数经常变化,如果每次去修改就会变得很繁琐,这时候就需要把经常变化的值改变为提前编辑好的文档或函数中,便于调用时使用不同的值。

Jmeter参数化的方式有三种:

1)用户定义的变量(这种就是为了方便管理参数,只能有一个值,比如说ip地址不经常变化的)。

在线程组中添加一个用户定义的变量,然后写key和value就可以了,key就是这个参数的名称,也就是你在脚本里面取的值,value就是具体值了。在取参数化的值的时候,使用${name}这样去取值,name就是你取的变量名称。

在脚本中获取参数化的值

2)函数生成器(函数生成器可以参照一定的规则生成数据,这样的比如说生成一些随机数)。

函数助手的话,可以按照规则生成一些参数,比如说随机数取当前时间,最常用的就是这两种。

随机数__Random,可以在你指定的一个范围内取随机值

取当前时间__time,如果在有一些需要传时间的情况下可以使用,日期格式是:yyyy-MM-dd HH:mm:ss 年-月-日-小时:分钟:秒

取唯一id,__UUID,这个就是每次会生成一个随机的uuid,都是唯一的。

利用函数助手可以按照规则生成一些参数。

3)从文件中读取(文件读取就是事先写好一些数据,然后从文件中读取,这样的话,比如说登录接口,账号和密码都是我们事先注册好的)

从文件中读取的有3个步骤:

1、读取文件

2、取文件内容里面的参数,给它一个名字

3、使用值(从文件读取的话,需要在线程组里面添加一个CSV Data Set Config,它就是做前面两步的操作的)。

5.jmeter断言

断言的作用是用来查看返回结果是否正确,如果正确就代表这个请求的返回值是正确的,如果没有的话就代表这个请求的结果和我们预期的不一致,这样我们就可以通断言来检查返回结果,测试是否通过。

6.jmeter关联

关联作用是由于后面操作需要用到前面服务器返回的结果,所以将该值保存传递过来以便使用。

Jmeter中的关联一般通过正则表达式提取器来完成(如果有特殊的jar包也可)

关联的值在其他请求引用时,直接使用${name}即可,name就是你关联的时候设置的变量名。

7.jmeter操作数据库mysql

操作数据库的步骤:

1.导入jdbc的jar包,因为jmeter本身不能直接连接mysql,所以需要导入第三方的jar包,来连接mysql。

2、创建数据库连接配置,mysql的url、端口号、账号、密码

3、写sql,执行sql

4、查看结果

Jmeter导入jdbcjar包

配置mysql连接

(1)添加一个JDBC Connection Configuration

(2)配置mysql连接池的名称,后面发sql请求的时候指定连接哪里

(3)数据库的url:jdbc:mysql://192.168.1.116:3307/bugfree?allowMultiQueries=true

(4)数据库驱动:这里就是指定连接什么类型的数据库,mysql、oracle、SqlServer等等

(5)账号密码

Jmeter执行sql

查看sql结果

8.Linux下运行jmeter压测

我们在做测试的时候,有时候要运行很久,公司用的测试服务器一般都是linux,就可以运行在linux下面,linux下面不能像windows一样有图形化界面,那怎么运行脚本呢,就先在windows上把脚本做好,然后在linux下运行即可,linux下运行jmeter是在jmeter的bin目录下的jmeter.sh这个shell脚本。

sh jmeter.sh -n –t a.jmx -l res.jtl

-n代表以没有图形化界面启动,-t代表后面是测试脚本,a.jmx也就是我们做好的jmeter脚本,-l代表测试结果 res.jtl就是测试结果文件,查看结果的话,在查看结果树视图中导入这个res.jtl就可以查看到测试结果了

9.jmeter添加负载机

我们在压测的时候,可能并发比较大, 一台机子已经启动不了那么多并发了,这个时候我们就要使用多台机子一起来发压力,就要添加压力机,添加压力机怎么添加呢,首先要在做压力机的机子上启动jmeter的代理,然后做为控制机的机子上添加上压力机的ip即可。

Jmeter的bin目录下有一个jmeter-server,启动它即可,windows机子作为压力机的话,运行jmeter-sever.bat,linux作为压力机的话,运行jmeter-server。

然后在作为控制机的jmeter配置文件里添加压力机ip即可,jmeter的配置文件在bin目录下jmeter.properties,添加压力机的时候,在配置文件里面找到remote_hosts添加ip,然后重启jmeter就可以看到远程压力机了

jmeter 添加压力机:

1、先在其他的负载机(另外的电脑)上启动jmeter-server(jmeter-server.bat windows) (jmeter-server.sh mac、linux)主控机和负载机

2、修改主控机jmeter的配置文件,找到remot_hosts,然后把负载机的ip加入到里面就好了remot_hosts=127.0.0.1,192.168.1.2:1099,192.168.1.3:1099默认jmeter-server的端口号是1099,如果说负载机上的端口号改了,那么你在这里也得改

3、启动时候要选择远程全部运行ps:如果有参数化文件,那么在负载机同样的位置上也得有一个参数化文件。

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/12 16:07:56

LobeChat能否支持WebGL可视化?三维数据呈现设想

LobeChat能否支持WebGL可视化?三维数据呈现设想 在AI助手逐渐从“问答工具”演变为“智能工作台”的今天,用户不再满足于冷冰冰的文字回复。工程师想看神经网络的拓扑结构,科研人员需要直观展示分子空间构型,设计师希望实时预览3D…

作者头像 李华
网站建设 2026/4/15 22:24:13

Fail2Ban 一键部署 + 管理脚本(可直接执行)

将以下内容保存为 fail2ban_setup.sh,执行 sudo bash fail2ban_setup.sh 即可完成「配置 Web 界面 常用命令封装」,无需手动敲命令!bash运行#!/bin/bash # Fail2Ban 一键部署脚本(适配 Ubuntu 20.04/22.04) # 作者&a…

作者头像 李华
网站建设 2026/4/16 13:33:13

软件工程与系统,容器,进程,架构,组织,结构和部署的关系概论

考虑软件工程作为一个学科,它涉及软件开发的整个生命周期。在这个生命周期中,系统、容器、进程、架构、组织、结构和部署是不同层次和阶段的关键概念。下面将详细阐述它们之间的关系,以及它们的核心机制和原理,并举例说明。 系统&…

作者头像 李华
网站建设 2026/4/8 20:16:39

C#字符串与数组操作全解析

第八次一,字符串创建1,对象类型: 可以通过class 创建一个对象类型如:People p1 new People() { Id100}; //p1对象类型2,基本类型: int float double 等 int 10如:int a 10;Test(a); Test1(…

作者头像 李华
网站建设 2026/4/15 16:19:21

飞度电感均衡:以三节电池为例的内控逻辑与sfunction逻辑运算

飞度电感均衡 三节电池为例 内附控制逻辑 sfunction 逻辑运算搞过BMS开发的老铁都知道,电池均衡是个磨人的小妖精。今天咱们拿三节串联电池当小白鼠,聊聊飞度电感均衡的骚操作。这个方案不用传统的电阻烧能量,改用电感当搬运工,能…

作者头像 李华
网站建设 2026/4/16 1:20:55

企微 SCRM 精准营销标杆:微伴 AI 标签 95% 准确率,复购率飙升

《2025 中国企业数字化私域运营白皮书》显示,78% 企业认为 “AI 提升私域效率” 是今年关键需求,但市面很多 SCRM 的 AI 只是 “噱头”。为帮大家避坑,我用 15 天模拟金融、零售、教育、服务四大行业真实场景实测 5 款企微 SCRM,结…

作者头像 李华