Jmeter接口测试:使用教程(上)

🍅 **点击文末小卡片,**免费获取软件测试全套资料,资料在手,涨薪更快

Jmeter是一款小巧,轻便、开源的性能测试工具,它也可以很方便的进行接口测试。

下面我就带大家学习下jmeter接口测试。

一、Jmeter简介

Jmeter是apache公司基于java开发的一款开源压力测试工具,体积小,功能全,使用方便,不像loadrunner那样体积大,是一个比较轻量级的测试工具,使用起来非常的简单,深受测试人员的喜爱,但是它的测试报告没有loadrunner的那么详细,看起来没有那么的直观。因为它是java开发的,所以运行的时候必须要安装jdk才可以,jmeter是免安装的,拿到安装包之后直接解压就可以使用了,它也是跨平台的在linux、windows、macos上都可以使用。

二、Jmeter-http接口脚本

1、添加线程组

2、添加http请求

3、在http请求中写入接口url、路径、请求方式、参数

4、添加查看结果树

5、调用接口、查看返回值

Jmeter-http接口脚本添加header:

Jmeter-http接口脚本添加cookie:

在这里添加cookie的时候,不要忘了把域这里写上接口的url,否则是不生效的,还有一种方法也是可以添加cookie,那就是在header里面添加一个key是cookie,值为cookie的值就好了,两种方法都可以

三、Jmeter-webservice脚本

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

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

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

4、把url、soapaction和请求报文写到soaprequest中

5、调用接口、查看返回值

四、Jmeter-参数化

参数化是干嘛的呢,咱们在调用接口的时候,有入参,那参数里面的值如果经常变化的话,就得每次去改了,很麻烦,这时候咱们就把需要经常变的值,改成可以变化的或者是咱们提前设置好的一些值,这样的话,调用的时候就不用每次都改它的值了

1、Jmeter参数化的方式有三种

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

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

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

2、用户定义的变量

value就可以了,key就是这个参数的名称,也就是你在脚本里面取的值,value就是具体值了。在取参数化的值的时候,使用${name}这样去取值,name就是你取的变量名称。

3、函数生成器

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

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

取当前时间__time------如果在有一些需要传时间的情况下可以使用,日期格式是:

yyyy-MM-ddHH:mm:ss

年-月-日-小时:分钟:秒

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

4、从文件中读取

从文件中读取的话,三个步骤

  1. 读取文件
  2. 取文件内容里面的参数,给它一个名字
  3. 使用值

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

五、Jmeter断言

断言------它是用来检查返回结果对不对的。

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

基本的入门就给大家介绍到这里了,感谢您的认真阅读

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。

相关推荐
浊酒南街42 分钟前
subprocess.run函数介绍
python
星空1 小时前
【无标题】
python
想会飞的蒲公英10 小时前
计算机怎样读取中文文本:编码、清洗与标准化
人工智能·python·自然语言处理
SeaTunnel11 小时前
从 Python Script 地狱到标准化数据集成框架
大数据·开发语言·python·程序员·代码·seatunnel
深度研习笔记11 小时前
OpenCV工业视觉实战09|项目EXE打包+工控机无环境部署+后台常驻运行,彻底脱离Python环境,完成项目最终交付
python·opencv·webpack
CCPC不拿奖不改名12 小时前
大模型推理架构与开源生态知识整理
数据库·windows·python·架构·langchain·开源·github
小小测试开发12 小时前
Playwright vs Selenium vs Cypress:从浏览器协议到 API 设计的全面对比与实测
人工智能·selenium·测试工具
Marst Code12 小时前
(python)2026Plotly 库评估:交互式可视化到底值不值得引入?
开发语言·python
databook12 小时前
当散点图不够用时:用 t-SNE 可视化多维数据
python·数据分析·数据可视化
我的xiaodoujiao15 小时前
快速学习Python基础知识详细图文教程9--函数进阶
开发语言·python·学习·测试工具