JMeter接口测试___参数化方法
- 一、JMeter添加参数的常用方法
- 1.Get请求
- 2.Post请求
- 二、JMeter常用参数化的方式
- 1.用户参数(User Parameter)
- 2.用户自定的变量(User Defined Variables)
- 3.CSV数据文件设置(CSV Data Set Config)
- 4.函数助手
- 总结
前言:
以下主要介绍jmeter测试http协议接口的用法,包含get,post(form表单,发送json,上传文件,cookie)。
传参区别:
GET请求:参数拼接在url后面,传参的形式是key=value,多个键值对之间用&连接。
POST请求:通过request body传递参数将请求整体提交给服务器。
首先认识URL的组成部分:
如:https://caas-uat.crcloud.com/apis/cluster/api/v1/applicationlist?clusterId=1a9686ef-5c49-48a0-8c8a&nameSpace=test001
1)协议:http/https
2)域名:第一个”/”之前为域名。该URL的域名部分为“caas-uat.crcloud.com”
3)端口号:跟在域名后面的是端口,域名和端口之间使用“:”作为分隔符。如果没有一般采用默认端口。
4)接口路径:从域名后的第一个“/”开始到最后一个“/”为止,是接口路径。
5)参数部分:从“?”开始到“#”为止之间的部分为参数部分。参数可以允许有多个参数,参数与参数之间用“&”作为分隔符。
一、JMeter添加参数的常用方法
JMeter中常用的3种传参方式:parameter、body data、files upload
1、GET请求
1)不带参数的Get请求
2)带参数的Get请求
GET请求的入参一般是form表单形式,或者直接在path后面通过“?”连接传递
多个参数以&符号连接,如:?fr=aladdin&a=1&b=2&c=3
2、POST请求
POST请求中content-type的三种数据类型:
①content-type:application/x-www-form-urlencoded form表单默认类型
②content-type:application/json json类型
③content-type:multipart/form-data 文件上传
注:parameter和 body data只能二选一,files upload不受影响; 填写注意空格
1)x-www-form-urlencoded格式--传参方法(参数格式:key1=value1&key2=value2)
如:
①在CSDN评论博客,打开一篇文章,按F12打开开发者模式,点击评论,查看请求和响应
②在Jmeter中填入对应的接口信息和入参
③cookie信息保存在HTTP信息头(线程组下→添加→HTTP信息头管理器)
2)json数据类型--传参方法
参数格式:
{
"key1":"value1",
"key2":"value2"
}
3)form-data 一般用于需要上传文件的接口使用
注:三个参数都是必填;填写注意空格。
①http请求中也需要勾选“对post使用multipart/form-data”
②http请求中-->切换到高级-->客户端实现选择“JAVA”
二、JMeter之常用参数化方式
1、参数化作用:
在迭代测试中需要动态传入不同的数据时,或者复用性较高、经常变动的数据用来参数化,每次有调整时,直接改变量值,不用每次到http请求的配置中修改。
2、用法:
Jmeter中通过${}形式来取参数值
①当取值为变量,使用${变量名}来引用
②当取值为函数,使用${_函数名(参数1,参数2,参数3)}来引用
3、JMeter的四种参数化方式:
参数化方式 |
业务场景 |
用户参数(User Parameter) |
适用于参数取值范围较小时 |
用户自定的变量(User Defined Variables) |
用户自定义变量,更多用于设置全局变量 |
CSV数据文件设置(CSV Data Set Config) |
数据存储在文件中,参数化取值范围大,灵活性强 |
函数助手 |
__Random等函数,生成随机数字和随机字符串实现参数化 |
4.1 JMeter常用参数化方式——用户参数(User Parameter)
操作路径:线程组上右键【添加】->【前置处理器】-->【用户参数(User Parameter)】
参数化添加位置 |
作用域 |
|
1 |
Test Plan测试计划 |
Test Plan下所有的HTTP Request都可以调用参数,调用方式"${变量名}” |
2 |
Thread Group线程组 |
Thread Group下所有的HTTP Request都可以调用参数,调用方式"${变量名}” |
3 |
HTTP Request |
只有当前的HTTP Request可以调用参数。 |
4.2 JMeter常用参数化方式——用户自定义变量(User Defined Variables)
操作路径:线程组上右键【添加】->【配置元件】-->【 User Defined Variables】
JMeter有两个User Defined Variables:
* Test Plan的User Defined Variables作用域是全局的(下面的所有请求都可以调用,减少了变量的数量)。
* 配置元件的User Defined Variables作用域可以是全局的也可以是局部的。但是只能定义一个值,不适合大量数据的测试。
4.3 JMeter常用参数化方式——CSV Data Set Config/CSV数据配置文件
操作路径:线程组上右键【添加】->【配置元件】-->【 CSV Data Set Config】
CSV可以读取CSV、excel、txt等格式。
1. 新建txt文件,内容为参数的值集,每一个参数占一列,第一行可写或不写参数名;
2.线程组中添加csv data set config,填写txt文件完整路径;
3.在http请求对参数的引用,格式为${变量名称};运行脚本直接读取。
4.4 JMeter常用参数化方式——函数助手之__CSVRead
操作路径:工具->函数助手对话框(Ctrl+Shift+F1)->CSVRead
调用__CSVRead()函数获取外部数据文件中的数据:
1、__CSVRead()函数,不能去首行,所以不用写标题。
2、读取的顺序是0,1,2...;
列的编写规则是:从0开始,每次递增1,也就是说0表示第一列,1表示第二列
总结
以上就是jmeter参数化的四种方式,其中:
1、User Variables:简化版的csv,参数不多且用户量超过user parameter的时候可以用这个; 可以理解为实例,user1,user2,user3....,添加多个实例时,修改线程组-线程数的数量,和添加的用户参数添加的保持一致或者多余。
2、User Defined Variables:一般用于test plan中不需要随请求迭代的参数设置,固定不变的,比如IP,地址、端口号;
3、函数助手_CSVRead的参数化功能相比CSV Data Set Config较弱;利用自带的函数读取文件中的数据作为参数,多行数据是也要修改线程组-线程数的数量。
4、CSV Data Set Config:通常用于多用户并发,该方法具有更大的灵活性。也是读取本地文件,函数助手读取是0,1,2...,而csv读取每行的username,password等变量的值。
JMeter接口测试___参数化方法相关推荐
- Jmeter接口测试中参数化的多种方法,你知道的有几种?欢迎评论留言。
目录 前言: 一.用户定义变量 二.用户参数 三.user.properties文件 四.txt/csv 文件参数化 五.从数据库中获取 六.BeanShell参数化 前言: 在使用Jmeter做接口 ...
- JMeter接口测试___接口关联
前言 一.什么是接口关联? 二.JMeter关联方法: 1.正则表达式提取器 2.Json Extractor提取器 3.边界值提取器 总结 前言 关联的概念: 关联也称为串行参数或数据依赖. ...
- Jmeter之数据参数化方法汇总
一.什么是参数化 Jmeter参数化是指将脚本中的某些需要输入数据使用参数来代替,在脚本运行时指定参数的取值范围和规则.脚本在运行时就可以根据需要选取不同的参数值作为输入. 常用的Jmeter的参数化 ...
- Jmeter接口测试+参数化
Jmeter接口测试+参数化 1.双击Jmeter.bat文件打开Jmeter 2.右键测试计划添加线程组 2.右键线程组添加用户参数 3.在用户参数里添加变量,变量名称以及参数根据接口文档来填写 5 ...
- jmeter的两种参数化方法
2019独角兽企业重金招聘Python工程师标准>>> JMeter也有像LR中的参数化,本篇就来介绍下JMeter的参数化如何去实现. 参数化:录制脚本中有登录操作,需要输入用户名 ...
- 【全栈接口测试进阶系列教程】入门到入职的jmeter接口测试工具实战,接口测试步骤,正则表达式jsonpath,断言,接口加密,beanshell,jdbc,jmeter+ant+jenkins
目录 [本文简介看之前请详细的看完介绍] 本文是全网首发的[全栈接口测试进阶系列教程]jmeter接口测试工具从入门到入职, 接口系列包含 接口测试系列包含所有的接口测试工具入门到入职,如果你喜欢的话 ...
- 全网最新最细最全最牛的jmeter接口测试,性能测试,没有之一,如有雷同纯属抄袭。
目录 1.接口简介 2.接口测试简介 3.环境搭建 4.RESTful风格 5.Json说明 6.Jmeter简介 7.Jmeter环境搭建 8.Jmeter使用 8.1 Jmeter发GET请求 8 ...
- 如何使用jmeter进行接口测试?jmeter接口测试流程是怎样的
前言 我们学习自动化测试都会用到不同的工具,那么今天笔者呢,想给大家聊聊Jmeter接口测试流程详解,废话不多说直接进入正题. 一.jmeter简介 Jmeter是由Apache公司开发的java开源 ...
- Jmeter接口测试实例
一.关于Jmeter接口测试 选择使用Jmeter的原因:与其他工具或者框架的比对 - Postman 和 HttpRunner Jmeter本身适合做性能压测,进行接口测试时能够在测试计划中编写测试 ...
最新文章
- error C2664: 'MessageBoxW' : cannot convert parameter 2 from 'const char [2]' to 'LPCWSTR'
- 详述@ResponseBody和@RequestBody注解的区别
- js 校验验证码 知识点
- freemark循环map_freemarker中循环map根据key值得value 报错
- 如何下载多段ts视频 m3u8 ffmpeg
- 【原创】FlashFXP_4.0.0.1510 值得研究
- 【数据结构、算法】八大排序算法概述(算法复杂度、稳定性)
- Objective-C ,ios,iphone开发基础:ios数据库(The SQLite Database),使用终端进行简单的数据库操作...
- 【原创】如何写一个框架:步骤(下)
- Activiti中的事件监听
- 从声学模型算法角度总结 2016 年语音识别的重大进步
- 计算机图形学_bresenham画线算法的最简洁实现(已验证)
- ubuntu Nvidia 显卡驱动失效问题
- 2020云课堂智慧职教答案计算机,2020云课堂智慧职教答案英语,云智慧职教题库,智慧职教测试答案...
- OCR表格识别—(一)
- x86 单线并发多拨_单线多拨软路由。真正打破网络限速,飙升网速的秘诀
- ps图层转css3代码,CSS3Ps:ps图层转CSS3代码之神器
- 《创新者的基因》读书笔记
- 二叉树练习:最小函数值
- ubuntu更新源修改更新源
热门文章
- 智慧海洋竞赛Task01:地理数据分析常用工具
- C语言检测数独是否合法,会数独的大佬请进。这是个判断九宫格数独是否正确的程序。...
- 第二次阅读作业--12061161 赵梓皓
- 用ControlJS优化阿里妈妈广告
- NI myrio+labview+红外传感器小车避障巡线控制
- 空三加密matlab,剖析空三的意义及航天远景空三加密流程
- FLASH AS3.0 停止播放音乐
- 基于51单片机的智能电子秤设计
- 珍藏已久的三款国产优质软件,让你的电脑好用数倍不止
- 揭秘世界顶级酒庄Chateau Renice:熟客才喝得到