Jmeter做http接口测试

本文详细介绍使用JMeter工具对HTTP接口进行测试的过程,包括GET和POST请求的区别,以及通过BadBoy录制脚本并在JMeter中执行的具体步骤。

本文主要针对http接口进行测试,使用Jmeter工具实现。

  Jmter工具设计之初是用于做性能测试的,它在实现对各种接口的调用方面已经做的比较成熟,笔者使用Jmeter工具从对Http接口的测试进行入手。

本节主要介绍如何通过录制的方法对http接口进行测试,下节将介绍如何通过.jmx脚本的方式对接口进行测试。

1.介绍什么是接口

现在最常用的2种接口就是webservice和http api接口,webservice 接口是走soap协议通过http传输,请求报文和返回报文都是xml格式,可以通过jmeter、soapui工具进行测试;http api接口是走http协议通过路径来区分调用的方法,请求报文格式都是key-value形式,返回报文一般是json串,常见的请求方式有get、post请求等;

2.介绍http协议常见的2种请求方式的区别

  get和post请求:

    get请求:从指定的服务器中获取数据,直接在浏览器里输入就可以获取信息;

    post的请求:提交数据给指定的服务器处理,可以向服务器发送修改请求,从而修改服务器的,需要借助测试工具;

    get请求特点:

       (1)get请求能够被缓存

       (2)get请求会保存在浏览器的浏览记录中

       (3)以get请求的url能够保存为浏览器书签

       (4)get请求有长度限制

       (5)get请求主要用以获取数据

 post请求特点:

       (1)post请求不能被缓存

       (2)post请求不会保存在浏览器浏览记录中

         (3)以post请求的url无法保存为浏览器书签

       (4)post请求没有场地限制

 

3.录制脚本的方式(本文以测试平台为例进行讲解)

3.1利用badboy进行录制

badboy录制的优点在于:不会产生大量无用请求,且具有可视化的能力。

实现步骤如下:

3.1.1 

(1)首先打开badboy,这里以测试平台为例"http://10.0.0.113:81/index/",这边可以输入你需要录制的域名或ip

图中标1的是录制开关按钮,录制状态

标2的地方输入域名或IP

标3的地方在请求的时候会出现录制的脚本信息

 

(2)点击开始录制,域名链接成功后,右侧框内会出现测试平台的界面

 

(3)在界面内进行想要录制的操作,左侧的脚本栏中会自动生成录制过程,将你所进行的操作以及结果录制下来,简单的做一个小demo

 

(4)录制完成后点击结束按钮,可以右键点击工程进行回放某一步操作或者回放整个操作(badboy还具有打断点,多次执行脚本等很多的功能,此处不做详细讲解)。

 

(5)录制完成之后,可以通过badboy将脚本导出在jmeter中进行使用,首先先把刚才录制的脚本导出来

 

         工具栏:File——Export To Jmeter   导出为Jmeter格式,保存到桌面

(6)接下来使用jmeter打开录制成功的脚本

通过打开bin文件夹下的jmeter文件打开jmeter

 

(7)导入脚本后打开

 

左侧能够看到刚刚录制的脚本内容:

 

(8)接下来就要在jmeter中执行刚刚录制的脚本了,但是执行之前需要添加一个监听器-查看结果树来查看运行状况

 

(9)在查看结果树中能够查看每个请求的状态以及响应数据

 

 

(10)添加一个简单的断言:响应断言

 

响应断言设置为包含http响应码为200

 

添加断言监听器,打印满足响应码为200的请求并保存

 

(11)再次执行脚本,查看查看结果数和断言监听器中打印的结果

查看结果树的结果:

 

断言监听器的结果(打印了成功的请求):

 


作者:brave123here
链接:https://www.jianshu.com/p/5488f34afd0c
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

### 使用JMeter进行HTTP接口测试 使用JMeter进行HTTP接口测试需要完成一系列配置操作,以确保测试环境的正确搭建以及测试用例的有效执行。以下是关于如何使用JMeter实现HTTP接口测试的专业说明。 #### 1. 环境准备 在开始测试之前,需要确保安装了必要的软件工具。根据引用内容[^1],以下为环境准备的关键步骤: - 安装JDK 1.6或更高版本。可以通过访问Oracle官方网站下载并安装Java。 - 下载并安装JMeter。官方下载地址为Apache JMeter官网[^1]。 - 如果需要扩展功能,可以安装插件。插件的下载地址为JMeter Plugins官网。 #### 2. 启动JMeter 启动JMeter后,需要根据操作系统选择不同的启动脚本: - 在Windows系统中,运行`jmeter.bat`文件。 - 在Linux系统中,运行`jmeter.sh`文件[^3]。 #### 3. 创建测试计划 测试计划是JMeter的核心组件,用于组织管理测试用例。创建测试计划的具体步骤如下: - 打开JMeter后,默认会生成一个“测试计划”节点。 - 右键点击“测试计划”,选择“添加” > “线程组”,创建一个新的线程组。线程组用于定义并发用户数、循环次数等参数[^5]。 #### 4. 配置HTTP请求 在测试计划中添加HTTP请求采样器(HTTP Request Sampler),以模拟对目标HTTP接口的调用: - 右键点击线程组,选择“添加” > “取样器” > “HTTP请求”。 - 在HTTP请求配置中,填写目标接口的详细信息,包括服务器名称或IP地址、端口号、请求路径、请求方法(如GET或POST)等[^1]。 - 如果需要传递参数,可以在“参数”选项卡中添加键值对。 - 对于POST请求,如果需要发送JSON或其他格式的数据,可以在“Body Data”字段中输入请求体内容[^4]。 #### 5. 添加监听器 为了查看测试结果,需要在测试计划中添加监听器: - 右键点击线程组,选择“添加” > “监听器” > “查看结果树”或“聚合报告”。 - “查看结果树”用于显示每个请求的详细响应信息。 - “聚合报告”用于汇总所有请求的性能指标,如平均响应时间、吞吐量等[^5]。 #### 6. 运行测试 完成上述配置后,点击工具栏上的“启动”按钮运行测试测试过程中,可以通过监听器实时查看测试结果。 #### 7. 分析结果 测试完成后,分析监听器中的数据以评估接口性能稳定性。如果发现异常,可以根据响应信息定位问题并优化接口[^5]。 ```python # 示例:使用Python代码生成简单的HTTP请求 import requests url = "http://example.com/api" payload = {"key": "value"} headers = {"Content-Type": "application/json"} response = requests.post(url, json=payload, headers=headers) print(response.status_code) print(response.json()) ``` ### 注意事项 - 如果测试涉及多个子系统或流程,建议将每个子系统放在单独的测试计划中,并通过线程组区分不同流程[^5]。 - 对于复杂的测试场景,可以使用CSV数据集配置元件来动态加载测试数据。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值