学习笔记jmeter之函数(7)

目录

数字类

__counter() : 计数器

__random(): 随机数函数 ​      

__time() : 获取时间的函数

__CSVRead类

__CSVRead() :和 CSV Data Set Config 类似可以读取 CSV 文件数据

属性类

__setProperty() : 属性设置

BeanShell Sampler 组件

Property Display

__property() : 属性获取


函数:可以被认为是某种特殊的变量,它们可以被采样器或者其他测试元件所引用。

1. __CSVRead
2. __counter 
3. __Random
4. __time
5. __setProperty
6. __property

 

数字类

__counter() : 计数器

        

__random(): 随机数函数 ​      

包含左右临界值(左闭右闭)

       

__time() : 获取时间的函数

​        时间格式: yyyy/MM/dd HH:mm:ss ==》 年/月/日 时:分:秒

      

 

__CSVRead类

__CSVRead() :和 CSV Data Set Config 类似可以读取 CSV 文件数据

作用:csvRead函数是从外部读取参数,csvRead函数可以从一个文件中读取多个参数

 需求:使用 CSVRead 函数实现学院信息的批量插入(比如: 3条)

思想:

1)、搭建框架(线程组的线程数设置循环次数),JSON 格式数据只是模板,具体数据动态获取

​       注意:执行次数设置与信息头设置

​    CSV Data Set Config 执行多次是使用的循环次数,而 CSVRead 执行多次使用的是线程数

2)、将数据存储在外部的文本文档(CSV 格式)

3)、使用 CSVRead 函数逐行获取并解析 CSV 文件,插入到提交的 JSON 数据中

​    CSVRead 函数设置 CSV文件路径时,必须得使用绝对路径,不可以使用相对路径

      

第1个用户读取第一行,第2个用户读取第二行......

    都是读取第一行,执行三次。这个跟csv data seting设置循环次数的区别。

 

1. 选择一个功能:选择__CSVRead
2. CSV file to get values from | *alias:要读取的文件路径-(绝对路径)
3. CSV文件列号| next| *alias:从第几开始读取,注意第一列是0
4. 点击生成函数引用格式
5. 全选复制

 

属性类

需求:http 请求1 访问百度,将请求1响应的 title 值传递给请求2,但是两个请求不属于同一个线程组

​           http 请求2 访问 google  /?wd=百度一下你就知道

 实现思想 :

​      将线程组内部的数据导出去,存储在共享空间中,其他线程组要使用数据,就从共享空间获取。

实现流程:

​     1)、将数据从当前线程组导出 __setProperty

​         变量名

​         变量值  ${变量名}        

​         <u>使用 BeanShell Sampler 调用函数</u>

​     2)、另外一个线程组将导出到共享空间的数据引入 __property

​        根据变量名获取 

​    注意:查看共享数据,工作台 ----> 添加 -----> 非测试元件 ----> property display

通过在同一个线程组两个请求结合xpath提取器进行关联的方式可以实现。但是跨越两个线程组的话,参数就无法传递了,如上图,说明作用域只限在同一线程组。(测试计划已勾选 独立运行线程组选)

__setProperty() : 属性设置

用于把指定数据设定成Jmeter属性,可以理解为是把指定数据设置成全局变量.  

1. 属性名称:要设置的属性名称也就是全局变量名
2. Value of property:属性的值(全局变量的值)  

BeanShell Sampler 组件

可执行JavaScript的一种容器。设置属性的函数,真正生效需要BeanShell Sampler 的协助。

Property Display

查看共享全局变量信息。(键值对的形式)

位置:测试计划--非测试元件--Property Display

__property() : 属性获取

获取Jmeter中属性值

另一个线程组的请求需要引用全局变量的属性,如上图设置。

但是,不建议共享数据扩大作用域。使用场景不多。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章