JMeter接口测试___参数化方法

这篇具有很好参考价值的文章主要介绍了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请求

jmeterpost请求怎么做参数化,JMeter接口测试,测试工具

 2)带参数的Get请求

  GET请求的入参一般是form表单形式,或者直接在path后面通过“?”连接传递

  多个参数以&符号连接,如:?fr=aladdin&a=1&b=2&c=3

jmeterpost请求怎么做参数化,JMeter接口测试,测试工具jmeterpost请求怎么做参数化,JMeter接口测试,测试工具

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打开开发者模式,点击评论,查看请求和响应

jmeterpost请求怎么做参数化,JMeter接口测试,测试工具

jmeterpost请求怎么做参数化,JMeter接口测试,测试工具

 ②在Jmeter中填入对应的接口信息和入参jmeterpost请求怎么做参数化,JMeter接口测试,测试工具

 ③cookie信息保存在HTTP信息头(线程组下→添加→HTTP信息头管理器)

jmeterpost请求怎么做参数化,JMeter接口测试,测试工具

jmeterpost请求怎么做参数化,JMeter接口测试,测试工具

 2)json数据类型--传参方法

参数格式:

{

 "key1":"value1",

 "key2":"value2"

}

jmeterpost请求怎么做参数化,JMeter接口测试,测试工具

3)form-data 一般用于需要上传文件的接口使用

jmeterpost请求怎么做参数化,JMeter接口测试,测试工具jmeterpost请求怎么做参数化,JMeter接口测试,测试工具

注:三个参数都是必填;填写注意空格。

①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可以调用参数。

jmeterpost请求怎么做参数化,JMeter接口测试,测试工具jmeterpost请求怎么做参数化,JMeter接口测试,测试工具 4.2 JMeter常用参数化方式——用户自定义变量(User Defined Variables) 

 操作路径:线程组上右键【添加】->【配置元件】-->【 User Defined Variables】

jmeterpost请求怎么做参数化,JMeter接口测试,测试工具

jmeterpost请求怎么做参数化,JMeter接口测试,测试工具

jmeterpost请求怎么做参数化,JMeter接口测试,测试工具

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请求对参数的引用,格式为${变量名称};运行脚本直接读取。

jmeterpost请求怎么做参数化,JMeter接口测试,测试工具jmeterpost请求怎么做参数化,JMeter接口测试,测试工具

 4.4 JMeter常用参数化方式——函数助手之__CSVRead

操作路径:工具->函数助手对话框(Ctrl+Shift+F1)->CSVRead

调用__CSVRead()函数获取外部数据文件中的数据:    

1、__CSVRead()函数,不能去首行,所以不用写标题。

2、读取的顺序是0,1,2...;

     列的编写规则是:从0开始,每次递增1,也就是说0表示第一列,1表示第二列

jmeterpost请求怎么做参数化,JMeter接口测试,测试工具jmeterpost请求怎么做参数化,JMeter接口测试,测试工具


总结

以上就是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等变量的值。文章来源地址https://www.toymoban.com/news/detail-689069.html

到了这里,关于JMeter接口测试___参数化方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 接口测试之jmeter不同线程组之间的参数共享

    思路:创建两个线程组,第一个线程组里面的 “登陆接口” 中登陆成功后获取到的token,要作为第二个线程组的http请求头中的参数信息 【ps:很多时候跨线程无法获取到参数就是没有勾选这个选项导致的】 注意:jmeter本身的内置函数中,“__setProperty()” 函数可以把某参数的

    2023年04月09日
    浏览(43)
  • 使用JMeter进行基本接口请求的实现方法

    本文介绍如何使用JMeter实现基本的接口请求,包括添加线程组、添加HTTP请求、设置参数、添加察看结果树等步骤。通过实例演示,展示如何调用百度安全验证接口并查看返回数据。

    2024年02月06日
    浏览(59)
  • 软件测试技能,JMeter压力测试教程,请求头部自动签名带上X-sign参数(二十二)

    接口请求 body 带有 sign 签名参数,sign 签名是根据请求 body 除去 sign 本身参数后,拼接请求参数最后 md5 加密生成的 前面一篇是把 sign 前面参数放到请求的 body 里面,这篇继续讲把签名参数放到请求头部的情况 http 请求需要进行签名校验 X-Sign,放到请求头部 Content-Type: applic

    2024年02月12日
    浏览(57)
  • 接口测试Postman学习笔记2--创建请求+变量+接口关联+参数设置

    目录 五、Postman执行接口测试 六、Postman的环境变量以及全局变量 七、接口关联 八、Postman内置动态参数以及自定义的动态参数 1.请求界面介绍 请求页面:         Params:get请求传参         authorization:鉴权         headers:请求头         Body :post请求传参   

    2024年01月20日
    浏览(48)
  • 接口测试|Postman发送带参数的Get请求

    发送带参数的GET请求 示例:微信公众号获取access_token接口,业务操作步骤 1、打开微信公众平台,微信扫码登录:https://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login 2、打开微信开放文档,找到获取access_toekn 的接口信息:https://developers.weixin.qq.com/doc/offiaccount/Basic_Information/Get_ac

    2024年02月06日
    浏览(45)
  • 接口测试-关于postman的几种参数请求方式

    (1)POST的数据类型 对于post请求方式,一般都是要对请求发送相应的一些参数的,而参数的注入一般填写在Body中。  如上图所示,在Body中,有多种类型选择: none:一般都不使用 form-data:  对于form-data,是采用键值对的方式进行存储,即将该表单的数据组织成Key-Value形式,

    2024年02月12日
    浏览(84)
  • Jmeter 测试 MQ 接口怎么做?跟我学秒变大神!

    MQ(message queue)消息队列,是基础数据结构 先进先出 的一种典型数据结构。一般用来解决应用解耦,异步消息,流量削锋等问题,实现高性能,高可用,可伸缩和最终一致性架构。 MQ 主要产品包括:RabbitMQ、ActiveMQ、RocketMQ、ZeroMQ、Kafka MQTT 是轻量的 (Lightweight)、发布订阅模式

    2024年02月06日
    浏览(63)
  • 使用Postman工具做接口测试 —— 环境变量与请求参数格式!

    在上一篇笔记我们主要介绍了接口测试的基础知识与基本功能,本章主要介绍如何使用postman做接口测试。 环境变量和全局变量 环境管理中还可以点击“Global”添加全局变量,环境变量只有当选择了该环境时才生效,全局变量在任何环境中都生效,测试集中的变量只在当前测

    2024年02月05日
    浏览(72)
  • 技术分享 | 接口测试请求超时怎么办?

    作为一名软件测试技术面试官,经常会通过提问一些基础性的实践来考查候选人是否真正拥有相关的技术经验,在接口测试中我们经常会遇到请求超时的情况。这是一个非常普遍的问题,这就需要在平时的错误中来总结经验了以便在面试时可以举例说明报错及自己的排查过程

    2024年02月09日
    浏览(67)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包