jmeter 自定义参数_Jmeter接口测试(五)变量及参数化

在请求过程中,有时我们需要在请求中设置一些变量来测试不同的场景。

提示:在调试请求过程中,无关的请求可以暂时禁用掉,选择某个暂时不用的请求,右键--禁用

Jmeter 支持以下类型变量:所有类型的变量在引用时的格式均为${变量名}

用户自定义变量

函数生成变量

BeanShell 变量

数据文件变量

e5ad74537a751057ea56a4f42680edfe.png

用户自定义变量

设置步骤: 选中请求——添加——前置处理器——用户参数 设置变量名称为 user,值为 hancel

44efbdebd47a9550604d568e91c299c9.png

在请求时引用变量如下所示: 变量引用格式为:${user}

4514f45f6c3413699dc90a49c07e9128.png

函数生成变量

Jmeter 有许多内置的函数,可以生成随机数。创建步骤:点击菜单栏选项——函数助手对话框——下拉选择

__Random()函数 函数配置如下:

ca1c60a6a5ef1e2863de4827fb71fa40.png

BeanShell变量

什么是BeanShell?

BeanShell 是一种完全符合 Java 语法规范的脚本语言,并且又拥有自己的一些语法和方法;

BeanShell 是一种松散类型的脚本语言(这点和 JS 类似);

BeanShell 是用 Java 写成的,一个小型的、免费的、嵌入式的 Java 源代码解释器,具有对象脚本语言特性,非常精简。

BeanShell 执行标准 Java 语句和表达式,另外包括一些脚本命令和语法。

Jmeter有哪儿些Bean shell?

定时器:BeanShell Timer

前置处理器:BeanShell PreProcessor

采样器:BeanShell Sampler

后置处理器:BeanShell PostProcessor

断言:BeanShell 断言

监听器:BeanShell Listener

CSV数据文件变量

CSV 数据文件变量是指从外部 csv 文件读取数据出来作为变量。

设置步骤: 选择请求——添加——配置元件——CSV 数据文件设置

创建 csv 文件(最好不用用记事本创建,推荐用 Nodepad++)文件编码为 UTF-8 文件内容如下:

user_data.csv

name1,pass1

CSV 数据文件设置如下:

194c40a2b9c325e6c7a3ce8578f3b051.png

在 Post 请求中引用变量数据如下:

ff9340e71375a88be0bb50fdb7090a36.png

运行之后在查看结果树中请求选项栏可以看到获取的变量数据。

83211d39c5dae9c07fe11557ad9e33eb.png

CSV参数化

针对之前的 POST 接口进行如下参数遍历测试:

接口如下:

http://httpbin.org/post

发送参数:user_data.csv

7b1e04fa5c3b834de666be71f15e849a.png

在之前的 csv 数据文件设置需要需改配置如下:表示把所有数据读取一遍,且不重复。

f863377f4650d91a72dc8096bb4504e9.png

Filename: 指保存信息的文件目录,可以相对或者绝对路径。否则会在jmeter日志文件(jmeter.log目录位置D:\Program Files\apache-jmeter-2.13\bin)中提示:系统找不到指定文件,运行脚本后,登录失败。

File encoding: 保持默认。默认为ANSI

Variable Names: 给csv文件中各列起个名字(有多列时,用英文逗号隔开列名)便于后面引用

Delimiter:与 .csv文件的分隔符保持一致。如文件中使用的是逗号分隔,则填写逗号;如使用的是TAB,则填写\t;

Allow quoted data? :是否允许引用数据,是否需要"123" 双引号内的数据

Recycle on EOF?:到了文件尾是否循环,True—继续从文件第一行开始读取,False—不再循环

Stop thread on EOF? :到了文件尾是否停止线程,True—停止,False—不停止,注:当Recycle on EOF设置为True时,此项设置无效。

Sharing mode:共享模式,All threads –所有线程,Current thread group—当前线程组,Current thread—当前线程。

接口请求名称格式更改为:post请求_参数化${user},方便我们后续查看数据遍历情况。

d2388779e963087b1626a7c27da19be5.png

最后修改线程组的线程数量,因为数据中有 4 组数据,所以设置为 4.

ab08f711d829e3d492039ef49b3eb3f7.png

运行查看结果如下:

3b0eb41408caf343371084e0030fbb71.png


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部