用Jmeter进行接口测试

Jmeter接口测试 阅读详情

web接口测试工具:
手工测试的话可以用postman ,自动化测试多是用到 Jmeter(开源)、soupUI(开源&商业版)。
在这里插入图片描述

下面将对前一篇Postman做接口测试中的接口用Jmeter来实现。

一、Jmeter 的使用步骤
打开Jmeter 安装包,进入\bin 中,找到"jmeter.bat", 点击打开即可。

在下图打开的Jmeter 页面中,右键“测试计划” -> “添加” -> “Threads(Users)” -> “线程组”, 建立线程组。
在这里插入图片描述

右键“线程组” -> “添加” -> “Sample” -> “HTTP请求”, 输入“服务器名称或IP”,对应的端口号,http默认端口号80,可以不写。

以下请求为GET, 所有“方法”那选择“GET”, 输入对应的路径,添加参数及值。
在这里插入图片描述

注意: “服务器名称或IP”中不用输入http://, 请求时会自动加入(eg, 输入api.test.cn.
在这里插入图片描述

右键“线程组” -> “添加” -> “监听器” -> “察看结果数”, 添加“察看结果数”, 以察看运行后的结果,如果所示。
在这里插入图片描述

这是一个简单的接口请求例子。

二、接口请求实例

  1. “用户定义的变量” 的应用
    以获取学生信息接口(stu_info) 为例,添加一个“用户定义的变量”,设置变量"host" 以及值,这样在获取学生信息接口(stu_info)就可以通过"${host}“取得“服务器名称或IP”的值。
    在这里插入图片描述
    在这里插入图片描述
    登陆接口(login)接口也可以应用“用户定义的变量”的方法,如上图所示,在“用户定义的变量”中添加"username”, “password” 变量及对应的值, 应用到登陆接口(login)接口请求中即可。
    在这里插入图片描述

  2. "HTTP Cookie 管理器"的应用

以金币充值接口(gold_add)为例,建立一个HTTP请求改名“金币充值”,选取请求方式POST, 输入对应的host, path以及同请求一起发送的参数和值。
在这里插入图片描述
由于此接口有权限验证,需要admin用户才可以做操作,需要添加cookie, 因此需要添加"HTTP Cookie 管理器"以传递Cookie。

添加"HTTP Cookie 管理器" 方法如下图所示, 右键“金币充值” -> “添加” -> “配置元件” -> “HTTP Cookie 管理器”
在这里插入图片描述
设置Cookie 的名称(即username 的值),值(即login Response 中的sign 值),域(已在“用户定义的变量”中设置,只需输入变量即可,格式为${host})
在这里插入图片描述
最后可以通过“察看结果数”的响应数据查看结果。

  1. 建立接口间的关联
    以下以登陆接口(login)和金币充值接口(gold_add)为例,在这两个接口间建立关联,让金币充值接口(gold_add)可以实时取得登陆接口(login)的"sign" 值,不必再“HTTP Cookie 管理器”中手动输入最新的sign 值。

从“察看结果树”可以看出,登陆接口(login)的Response 结构为Json格式, sign 在 login_info 里面一层。
在这里插入图片描述
3.1 应用"jp@gc - JSON Path Extractor" 来实现

右键“登陆” -> “后置处理器 -> “jp@gc - JSON Path Extractor”
在这里插入图片描述
通过“察看结果数”得到Response 的结果后, 将“JSONPath Expression” 输入"$.login_info.sign", 设置变量"sign2", 给金币充值接口(gold_add)用
在这里插入图片描述

因此需要在“HTTP Cookie 管理器”中将 u s e r n a m e 的 值 输 入 {username}的值输入 username{sign2},代替之前手动输入的那一串码。
在这里插入图片描述

3.2 右键“登陆” -> “后置处理器 -> “正则表达式提取器”
在这里插入图片描述
输入对应的值, “jp@gc - JSON Path Extractor” 中类似,将“引用名称”输入"sign2",以保证和“HTTP Cookie 管理器”的一致。将正则表达式中的式用login 接口返回的 “sign”: “cd2b43f1688e472e3a516b5a2c6831e8”, 中的一串码用(.*) 替换即可。
在这里插入图片描述
各参数的含义参考下表:
在这里插入图片描述
4. 设置断言
以“增加学生”接口(add_stu)为例,增加响应断言,以验证添加的数据是否成功。如下图所示设置
在这里插入图片描述
通过“察看结果数”可以看到“增加学生” 金币结果为绿色,同时响应数据里的确有断言中的设置的"1000"。
在这里插入图片描述

  1. “HTTP信息头管理器”的使用

以下图中的“获取所有学生信息” 为例,右键“获取所有学生信息” -> “添加” -> “配置元件” -> “HTTP Cookie 管理器” , 输入对应的名称和值即可。

注意: 这里的值需要输入完整的url, 包括http:// (eg, 输入http://api.test.cn)
在这里插入图片描述
6. POST 文件的使用方法
与其他POST请求中添加key-value, json 数据不同的是,这个需要在HTTP 请求中点击“Flies Upload” tab, 点击“添加”, 然后通过“浏览”上传本地的文件。

注意: 参数名称必须为"file"。
在这里插入图片描述
7. “CSV Data Set Config” 和 “函数助手对话框”的使用
以增加学生接口(add_stu)为例,在本地创建一个文件,添加name 和sex的值,对脚本设置5个线程或者循环5次,以加入这5个用户。
在这里插入图片描述
右键“线程组” -> “添加” -> “配置元件” -> “CSV Data Set Config”,如果仅应用于“增加学生”接口的话,可以直接在“增加学生”接口下面创建"CSV Data Set Config"。
在这里插入图片描述
根据下图添加对应的,“Variable Names” 输入"name" 和"sex", 以逗号隔开,为避免插入的数据乱码,将file encoding 设置为utf-8。
在这里插入图片描述
由于"CSV Data Set Config"中的变量名为name 和sex,因此在“增加学生”接口的"Body Data" 中将值分别替换为${name}, ${sex}。
在这里插入图片描述
由于“phone”的唯一性,每次插入一条学生信息时phone 都要求不一样,所以对后面8位用随机函数来实现。
在这里插入图片描述
8. 数据库的应用
以下是JMeter 驱动数据库列表:
在这里插入图片描述
以下以mysql 数据库为例。

添加一个"JDBC Connection Configuration", 根据上表中对mysql的要求设置下图的值。
在这里插入图片描述
添加一个"JDBC Request", 由于在Query 中有insert 和select, 所以Query Type 需要选择"Callable Statement", 如果是单个的select 或者insert,可以选取对应的Select Statement 和Update Statement。
在这里插入图片描述
通过察看结果数看到"JDBC Request" 请求成功,响应数据里返回insert 和select 的结果。
在这里插入图片描述
登陆mysql 数据库,查询发现和Jmeter 中通过察看结果数看到的结果一致。
在这里插入图片描述
**注意点:修改Jmeter 中的中文乱码要将"\bin" 路径下的"jmeter.properties" 文件中设置为 “sampleresult.default.encoding=utf-8”,如下所示。
在这里插入图片描述
对于Jmeter 里中文显示不出来的问题,可以打开"\bin" 路径下的"jmeter.properties" 文件,如下图所示,将这几个JS开头的注释去掉。
在这里插入图片描述
对于以上两个问题,修改后,需将Jmeter 重启才能起效。

转载地址:https://www.cnblogs.com/nancyzhu/p/8035042.html

jmeter接口测试教程以及接口测试流程详解 JMeter是一款功能强大的性能测试工具,也可以用于接口测试Jmeter是由Apache公司开发的一个纯Java的开源项目,即可以用于做接口测试也可以用于做性能测试。Jmeter具备高移植性,可以实现跨平台运行。Jmeter可以实现分布式负载。Jmeter采用多线程,允许通过多个线程并发取样或通过独立的线程对不同的功能同时取样。Jmeter具有较高扩展性。 阅读详情

相关推荐

jmeter接口测试详细教程

jmeter接口测试详细教程 jmeter接口测试-总结 1、你们公司的接口测试流程是怎样的?(有没有感觉熟悉,貌似在哪里听过) 接口测试我们是在XX项目做的,主要有XX接口,XX接口,XX接口等。 1、首先是从开发那里拿到API接口文档,了解接口业务、包括接口地址、请求方式,入参、出参,token鉴权,返回格式等信息。 2、然后使用Postman或Jmeter工具执行接口测试,一般使用Jmeter的步骤是这样的: 1、首先新建一个线程组。 2、然后就是新建一个HTTP请求默认值。(输入接口服务器IP和端口

yu_fz的博客 1万+

全网最全最细的jmeter接口测试教程以及接口测试流程详解

2023最新自动化测试自学教程新手小白26天入门最详细教程,目前已有300多人通过学习这套教程入职大厂!!_哔哩哔哩_bilibili2023最新合集Python自动化测试开发框架【全栈/实战/教程】合集精华,学完年薪40W+_哔哩哔哩_bilibili​​​​​​也方便你下次能够快速查找。如有不懂还要咨询下方小卡片,博主也希望和志同道合的测试人员一起学习进步在适当的年龄,选择适当的岗位,尽量去发挥好自己的优势。我的自动化测试开发之路,一路走来都离不每个阶段的计划,因为自己喜欢规划和总结,

MXB_1220的博客 6283

jmeter接口测试

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的ra

十七光年的博客 9149

JMeter接口测试

目录一.接口测试分类二.目前接口架构设计三.市面上的接口测试工具四.Jmeter简介,安装,环境变量配置五.Jmeter目录介绍六.Jmeter常用组件七.Jmeter执行接口测试执行接口测试1、新建线程2、配置元件3、取样器实战:获取接口同一鉴权码token接口4、查看结果树post请求-编辑标签接口Jmeter接口关联1.使用正则表达式实现接口关联2.使用Jsonpath表达式实现接口关联实现接口业务闭环创建标签接口Jmeter动态参数处理编辑标签接口删除标签接口上传文件接口Jmeter接口测试断言1、

点点的博客 1万+

如何用Jmeter接口测试

关键词:参数化、http请求、json、并发、接口测试接口测试时, Jmeter是常用的工具。那么怎么用这个工具来做接口测试呢? 一、首先,先了解下,什么是接口?什么是接口测试接口实现系统模块与模块或系统与系统间进行交互的功能。一般现在使用的比较多的是基于HTTP协议为基础的接口(包括WebService协议或者Tuxedo协议),还有就是PRC接口。但是接口的本质其实是发送一个re...

nfzhlk的专栏 2万+

JMeter接口测试入门

JMeter接口测试基础入门

m0_60826313的博客 5637

jmeter接口测试及详细步骤

http://download.csdn.net/detail/qq514418695/9686509

【✎__三味書屋】的博客 8万+

Jmeter接口测试实例

一、关于Jmeter接口测试 选择使用Jmeter的原因:与其他工具或者框架的比对 - Postman 和 HttpRunner Jmeter本身适合做性能压测,进行接口测试时能够在测试计划中编写测试场景并测试,也可以对特定场景进行性能压测。相对于其他工具来说可能会比较单一 Jmeter适合复杂的场景的接口测试,这个功能有点类似HttpRunner框架的自写功能方法。可以利用Java来实现某种场景下的接口功能验证。例如接口的加解密验签操作,支持jar包构建BeanShell语法支持的形式进行(对标Ht

学习无止境、创作无瓶颈 5312

如何使用jmeter进行接口测试jmeter接口测试流程是怎样的

Jmeter是由Apache公司开发的java开源项目,所以想要使用它必须基于java环境才可以;Jmeter采用多线程,允许通过多个线程并发取样或通过独立的线程对不同的功能同时取样。文章笔者就写到这里了哟,不知道大家对于和这个流程有没有更加的熟悉呢,对于jmeter有没有更加的了解呢,大家还有什么需要补充的可以在评论区留言讨论哟。

IKUN669的博客 2402

Jmeter接口测试实例讲解

前言: 本文主要针对http接口进行测试,使用Jmeter工具实现。 Jmter工具设计之初是用于做性能测试的,它在实现对各种接口的调用方面已经做的比较成熟,因此,本次直接使用Jmeter工具来完成对Http接口的测试。 一、开发接口测试案例的整体方案: 第一步:我们要分析出测试需求,并拿到开发提供的接口说明文档; 第二步:从接口说明文档中整理出接口测试案例,里面要包括详细的入参和出参数

iiyting的博客 1万+

Jmeter进行接口测试

Jmeter进行接口测试一、Jmeter安装二、设置Jmeter语言为中文环境三、Jmeter进行接口测试流程四、进行接口测试 一、Jmeter安装 1、安装JDK,必须JDK1.7以上的版本,推荐1.8的版本 2、进入官网:http://jmeter.apache.org/download_jmeter.cgi 下载最新的Jmeter版本,下载后解压到非中文目录,如:D:\ 3、配置Jmeter的环境变量。 (1) 新增变量:JMETER_HOME:D:\apache-jmeter-5.2.1

SM1555的博客 1344

jmeter接口测试详解

今天笔者呢,想给大家聊聊Jmeter接口测试流程详解,废话不多说直接进入正题Jmeter是由Apache公司开发的java开源项目,所以想要使用它必须基于java环境才可以;Jmeter采用多线程,允许通过多个线程并发取样或通过独立的线程对不同的功能同时取样。

okcross0的博客 936

Jmeter接口测试

Jmeter是由Apache公司开发的java开源项目,所以想要使用它必须基于java环境才可以;Jmeter采用多线程,允许通过多个线程并发取样或通过独立的线程对不同的功能同时取样。

huace3852的博客 742

jmeter进行接口测试

以获取学生信息接口(stu_info) 为例,添加一个“用户定义的变量”,设置变量"host" 以及值,这样在获取学生信息接口(stu_info)就可以通过"${host}"取得“服务器名称或IP”的值。登陆接口(login)接口也可以应用“用户定义的变量”的方法,如上图所示,在“用户定义的变量”中添加"username", "password" 变量及对应的值, 应用到登陆接口(login)接口请求中即可。2. "HTTP Cookie 管理器"的应用。

xt1989288的博客 1580
上一篇: JMeter 测试中,使用 JDBC 查询中文内容无结果的解决办法
下一篇: Linux系统vi或者vim编辑器中如何显示行号
yql791237384
博客等级 码龄9年 8粉丝 2原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值