如何用Jmeter做接口测试


- get请求:get请求是最简单的请求方式,输入正确的域名地址或者IP地址 ,添加路径和请求方式,启动后即可。
- 第一步:右键点击线程组->点击添加->点击Sampler->点击HTTP请求。


- 第二步:右键点击线程组->点击添加->监听器->查看结果树。


- 第三步:点击请求->输入ip地址或者域名->选择请求方式为GET->输入路径->点击启动按钮。

- 第四步:点击查看结果树->查看执行结果


- post请求:post请求跟get的区别除了请求方式不同之外,还需要添加请求体,请求体内容多半为json格式。
- 第一步:右键点击线程组->点击添加->点击Sampler->点击HTTP请求——同get请求
- 第二步:右键点击线程组->点击添加->监听器->查看结果树。——已添加的话,这步可以省略。
- 第三步:点击请求->输入ip地址或者域名->选择请求方式为POST->输入路径->输入请求参数->点击启动按钮。

- 第四步:点击查看结果树->查看执行结果——同get请求
- 带cookie的请求:该请求需要添加HTTP Cookie管理器。
- 第一步:右键点击线程组->点击添加->点击Sampler->点击HTTP请求——同get请求
- 第二步:右键点击线程组->点击添加->监听器->查看结果树。——已添加的话,这步可以省略。
- 第三步:右键点击线程组->点击添加->配置元件->HTTP Cookie管理器->点击Cookie管理器添加Cookie值。



- 第四步:点击请求->输入ip地址或者域名->选择请求方式为POST->输入路径->输入请求参数->点击启动按钮。——同POST请求

- 第五步:点击查看结果树->查看执行结果——同get请求
- 带Header的请求:该请求需要添加HTTP信息头管理器。
- 第一步:右键点击线程组->点击添加->点击Sampler->点击HTTP请求——同get请求
- 第二步:右键点击线程组->点击添加->监听器->查看结果树。——已添加的话,这步可以省略。
- 第三步:右键点击线程组->点击添加->配置元件-HTTP信息头管理器->填写信息头内容



- 第四步:点击请求->输入ip地址或者域名->选择请求方式为GET->输入路径->点击启动按钮。——同GET请求

- 第五步:点击查看结果树->查看执行结果——同get请求
- 文件上传的请求:需填写上传文件的路径。
- 第一步:右键点击线程组->点击添加->点击Sampler->点击HTTP请求——同get请求
- 第二步:右键点击线程组->点击添加->监听器->查看结果树。——已添加的话,这步可以省略。
- 第四步:点击请求->输入ip地址或者域名->选择请求方式为POST->输入路径->点击Files Upload->点击添加按钮->点击浏览->点击本地文件->输入参数名称->输入MIME类型->点击启动按钮。


- 第五步:点击查看结果树->查看执行结果——同get请求
- 第一步:添加配置元件->CSV Data Set Config


- 第二步:本地新建一个user.txt的配置文件,输入用户名,密码,逗号隔开,将文件放到Jmeter安装路径的/bin目录下。


- 第三步:点击CSV Data Set Config,配置变量,输入文件名称,定义参数名称,逗号隔开。


- 第四步:新建请求,步骤同上面的post请求。点击请求名称->输入域名->选择请求方式->输入路径->名称地方输入变量名->值的地方输入在CSV Data Set Config里面配置的变量名->点击启动按钮->查看结果树。

- 函数助手__Random:点击菜单栏的选项->函数助手对话框->选择一个功能__Random->输入范围的最小值&最大值->点击“生成”按钮->将生成的函数变量带入到请求内。



- 函数助手__time:选项->函数助手对话框->选择一个功能__time->输入时间格式->点击“生成”按钮->将生成的函数变量带入到请求内。



- 新建请求->右键点击请求添加后置处理器->JSON Extractor


- 点击JSON Extractor->输入变量名称->输入json表达式(json的层级关系用.点号来区分)



- 新建新请求->传入变量值(传入上一个请求提取的参数),这样就将两个请求的参数关联起来了。

- 右键点击请求->添加->断言->响应断言


- 点击响应断言->选择测试的响应字段->选择匹配规格->添加匹配的字段

- 添加驱动包:点击测试计划->点击“浏览”->添加本地驱动包


- 添加线程组:右键点击测试计划->点击“添加”->点击Threads(Users)->点击线程组->修改线程组名称为“操作数据库”
- 添加JDBC连接配置:右键点击线程组->添加->配置元件->JDBC Connection Configration


- 配置JDBC连接参数:定义变量名->输入DatabaseURL->JDBC驱动类->数据库用户名->数据库用户密码。
- URL:jdbc:mysql://${host+port}/${database_name}?allowMultiQueries=true&characterEncoding=utf-8(host、port、database_name换成对应的值),allowMultiQueries=true是允许多次查询,characterEncoding=utf-8是为了防止中文乱码的情况。
- JDBC驱动类:com.mysql.jdbc.Driver(固定)
- Username:数据库的用户名
- Password:数据库用户密码


- 添加JDBC请求:右键点击线程组->添加->Sampler->JDBC Request


- 配置请求:点击JDBC请求->输入配置的变量名->选择查询类型(Callable代表支持所有的sql语句)->输入数据库语句。


- 添加查看结果树->启动->查看执行结果(返回结果为绿色代表执行成功)。

- jmeter jdbc 中文乱码:连接池url后面添加characterEncoding=utf-8


- 接口返回体内容有乱码情况:
- 进入jmeter的/bin目录,打开jmeter.properties
- 找到"#sampleresult.default.encoding=ISO-8859-1"
- 去掉#,将ISO-8859-1修改成utf-8
- 重启jmeter


- win10系统上传文件接口报错的问题:将需要上传的文件直接放到jmeter安装目录的/bin目录下。


如何用Jmeter做接口测试的更多相关文章
- 怎样用JMeter做接口测试?
本文介绍JMeter如何做web service测试,一般来说web服务,一般指的是HTTP请求相关的内容.这里就介绍一下如何利用JMeter做基于HTTP的web接口测试.接口也叫API(Appli ...
- jmeter做接口测试
jmeter做接口测试有两种方式: 1. 2.
- 使用jmeter做接口测试----柠檬不萌!
一.乱码解决方案 1.jmeter查看结果树乱码 (1)在jmeter的bin目录下找到jmeter.properties这个文件,添加上 sampleresult.default.encoding= ...
- 使用Jmeter做接口测试(学生信息的6个接口)
使用Jmeter做接口测试,案例中涉及到接口有:获取学生信息.登录.添加学生信息.学生金币充值.获取所有学生信息.文件上传. 一.获取学生信息(get请求) 服务器名称或IP:输入被请求服务器的名称或 ...
- 利用Jmeter做接口测试
本文作者:大道测试团队-孙云 1.在安装jmeter之前先配置好JDK,再配置jmeter环境变量. 2.启动jmeter 启动jmeter: 双击Jmeter解压路径(apache-jmeter-3 ...
- 转:Linux下用Jmeter做接口测试
本地设计 首先在本地设计 Apache JMeter 测试计划,大家可以参考<接口测试之 JMeter 初探> ,这里不再重复. 服务器配置 确保服务器已经安装了JDK和Python. 在 ...
- 如何用Postman做接口测试
postman介绍&测试准备: postman介绍:postman是一个开源的接口测试工具,无论是做单个接口的测试还是整套测试脚本的拨测都非常方便. 前期准备:测试前,需要安装好postman ...
- 使用jmeter做接口测试
1.启动jmeter. 我们可以找到Jmeter/bin 目录下的jmeter-server这个脚本,运行即可. 在下图打开的Jmeter 页面中,右键“测试计划” -> “添加” -> ...
- 利用Jmeter做接口测试的时候,如何提取头部的JSESSIONID然后传递到下一个请求,继续完成当前用户的请求。
其实,关于这个问题有三种种解决方法: 1)从响应数据里面提取JSESSIONID,点击链接可以查看https://www.cnblogs.com/liulinghua90/p/5320290.html ...
随机推荐
- 性能监视器PerfMon v2.0 是一个流氓的汉化版
最近在部署一台新设备时,由于懒得翻墙用google下载软件,由一次中了坑.百度搜索出来的这个<性能监视器 v2.0 汉化版>,安装了之后,设备会时不时自动弹出广告.反编译分析了一下,的确就 ...
- 学习记录:《C++设计模式——李建忠主讲》4.“单一职责”模式
单一职责模式:在软件组件的设计中,如果责任划分的不清晰,使用继承得到的结果往往是随着需求的变化,子类急剧膨胀,同时充斥着重复代码,这时候的关键是划清责任. 典型模式:装饰模式(Decorator).桥 ...
- Jib插件构建镜像push到阿里云镜像仓库
一.前言 Jib:Google开源的Java容器化工具 可作为插件快速集成到项目中,构建镜像,实现 Java 应用容器化 下面贴出一张从网上看到的Jib描述~ 二.利用Jib插件构建镜像push到阿里 ...
- 京东物流出问题了?褥了30块羊毛 & 浅析系统架构
本人亲身经历,但后续的流程分析都是个人猜测的,毕竟没有实际做过这块的业务. 订单物流阻塞经过 火热的双11刚刚退去,截止今日,我在京东购买的矿泉水终于到货啦,下单两箱还只收到了一箱 :( ,从下单到收 ...
- Mysql 添加字段 修改字段 删除字段
1.添加字段(alter.add) mysql> alter table users add name varchar(30) not null after id; 2.修改字段(alter.m ...
- 2019-9-25:渗透测试,基础学习,Hydra BP爆破,js基本知识,banner信息收集笔记
使用BP和Hydra爆破相关的服务hydra:九头蛇,开源的功能强大的爆破工具,支持的服务有很多,使用hydra爆破c/s结构的服务,使用bp爆破web登陆窗口爆破需要的几个条件,爆破工具+字典字典: ...
- 10分钟学会Python函数基础知识
看完本文大概需要8分钟,看完后,仔细看下代码,认真回一下,函数基本知识就OK了.最好还是把代码敲一下. 一.函数基础 简单地说,一个函数就是一组Python语句的组合,它们可以在程序中运行一次或多次运 ...
- CTF中遇到的php
1.if(eregi("hackerDJ",$_GET[id])) { //eregi字符串对比 echo("<p>not allowed!</p& ...
- Glibc编译报错:*** These critical programs are missing or too old: as ld gcc
Binutils版本升级 这里是binutils版本过低导致, 查看已部署版本 上传离线升级包 [root@sdw1 glibc]# tar -zxvf binutils-2.32.tar.gz [r ...
- 多进程使用同一log4j配置导致的日志丢失与覆盖问题
最近接手了一个流传很多手的魔性古早代码,追日志时发现有明显缺失.对log4j不熟,不过可以猜测日志出问题肯定和多进程使用同一个log4j配置有关.经多次排查,终于捋清了其中逻辑.本文对排查过程进行复盘 ...