JMeter接口测试

一、接口测试基础

1.为什么要做接口测试?

(1) 前后端分离

(2) 项目一般都不是独立的,经常要调用外部的项目。项目和项目之间交互数据,通过接口交换。

(3) 安全考虑

2.接口测试测什么?

USB接口:数据传递的正确性(参数),输出结果的正确性,以及各种容错处理和权限控制。

项目接口:参数,结果,容错处理,权限。

3.接口测试工具?

Jmeter, Postman, Apifox, Apipost等

二、Jmeter安装配置以及核心目录详解

jmeter基于java语言来开发,java需要jdk环境。

1.安装jdk并且配置jdk的环境变量。

2.jmeter只需要解压就可以使用了。

D:\apache-jmeter-5.5\bin双击jmeter.bat文件就可以启动和使用。

backups:自动备份的目录

bin:jmeter.bat启动文件,jmeter.propties核心配置文件

extras:存放和第三方集成的构建文件,Ant+Jenkins会用到

lib:存放jar包

三、jmeter组件和作用域详解

10大组件(元件):

1.测试计划:容器

2.线程组:1-N用户

3.配置元件:接口配置,协议,接口服务器IP,接口服务器端口

4.前置处理器:在接口请求之前的操作

5.逻辑控制器:判断条件成立才请求接口,循环请求

6.定时器:延迟请求接口

7.取样器:发送请求

8.后置处理器:在接口请求之后的操作

9.断言:判断接口是否成功

10.监听器:收集测试结果

组件的作用域(非常重要):

结论一:组件可以作用于父组件,得出:如果我的组件只想作用于一个组件,那么就放到这个组件下面

结论二:组件可以作用于平级兄弟组件。

结论三:组件可以作用于平级兄弟组件之下的子组件。

四、Jmeter接口测试实战

场景一:我一个人负责所有的接口:项目规模不大

http:80

https:443

接口文档一般是开发给的,如果没有那就需要抓包。

请求:

  • 请求方式: get,post,put,delete

  • 请求路径:

  • 请求参数:

    • 查询字符串参数:直接在路径后面以?传,多个参数之间用&分开。

    • json参数:在消息体数据传

    • 文件参数:在文件上传传递

  • 请求头:

    • accept

    • x-requesed-with (注:原图拼写如此,通常应为 x-requested-with)

    • cookies

响应: 查看结果

五、接口关联

注意:access_token每一次请求之后都是会变的。不是固定的。

下一个接口需要用到上一个接口的access_token参数===接口关联

接口关联:

方式一:jsonpath实现接口关联:提取json数据,表达式写法:

$ 根节点

. 取子节点的值

分两步走:

在第一个接口使用jsonpath表达式取值:$.access_token

在下一个接口使用${变量名}使用值。

方式二:正则表达式实现接口关联:提取文本数据,表达式写法:

<input type="hidden" name="csrf_token" value="647c4ae98dfa90e7"/>

取值:647c4ae98dfa90e7

左边界+取值+右边界(必须唯一):name="csrf_token" value="(.*?)"

相关推荐
观无13 小时前
JMeter的基础应用
jmeter
幸运的星竹19 小时前
jmeter中设置属性值的用法
jmeter
AngusKit3 天前
AngusTester 与 Postman、MeterSphere:私有化统一测试怎么选
测试工具·jmeter·压力测试·metersphere·web测试·移动端测试
测试老哥4 天前
接口测试的测试用例应该怎么写?
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·接口测试
TomEval4 天前
【性能测试】17 - 性能测试入门
测试工具·jmeter
测试19986 天前
Jmeter接口自动化测试:Jmeter变量的使用
自动化测试·软件测试·测试工具·jmeter·职场和发展·测试用例·接口测试
川石课堂软件测试7 天前
涨薪技术|Prometheus之HTTP API中使用PromQL
网络协议·测试工具·jmeter·http·单元测试·postman·prometheus
yxlalm8 天前
4.1 JMeter 压测工具使用
jmeter