Jmeter函数助手之CSVRead

一、函数助手调用

启动jmeter界面后,可以在JMeter的选项菜单中找到函数助手对话框(快捷键:Ctrl+Shift+F1),如下图所示:

打开函数助手后,可从下拉列表中选择需要的函数,并为其参数设定值,不同的函数要求的参数也不同。

函数参数,第一列是名称,这是函数参数的简要描述,第二列是值,这是需要用户填充参数的值。

二、CSVRead函数

1、界面说明

这个函数的功能就是从CSV文件读取一个字符串。

当对某文件进行第一次读取时,文件将被打开并读取到一个内部数组中;如果在读取过程中找到了空行,函数就认为到达文件末尾了,后续所有对同一个文件名的引用,都使用相同的内部数组。用人话说,就是单用户(线程)读取CSV文件时,每次都是使用的同一个内部数组,也就是每次读取的都是同一个字符串。

每一个线程都有独立的内部指针指向文件数组中的当前行;当某个线程第一次引用文件时,函数会为线程在数组中分配下一个空闲行。如此一来,任何一个线程访问的文件行,都与其他线程不同(除非线程数大于数组包含的行数)。用人话说,就是多用户(线程)读取CSV文件时,每次都是使用不同的内部数组,也就是每次读取的是不同字符串。

默认下,函数会在遇到每一个逗号处断行;如果希望在输入列中使用逗号,那么需要换一个分隔符(设置属性csvread.delimiter实现),且该符号没有在CSV文件任何列中出现。

注意:文件名大小写对函数调用很重要,哪怕操作系统不区分大小写,CSVRead(test.csv,0)和CSVRead(Test.csv,0)

参数说明:

  • 第一个参数

    • CSV file to get values from | *alias:这里填写CSV文件的路径
  • 第二个参数

    • Column number of CSV file | next | *alias:取CSV文件里的第几列数据(默认是从0开始计算,填0代表的是CSV文件中的第1列数据)

2、函数使用

  • 创建一个csv文件:数据为两列,没有标题

  • 单用户(线程)多次循环执行时,每次CSVRead读取的都是第一个字符串

  • 多用户(线程)多次循环执行时,每次CSVRead读取的都是不同的字符串

  • 多用户(线程)多次循环执行时,每次CSVRead读取的都是不同的字符串,读取出CSV文件中的所有字符串

三、参考

1、官网:https://jmeter.apache.org/usermanual/functions.html

2、https://www.cnblogs.com/imyalost/p/6802173.html

posted @ 2022-10-26 17:45  xyztank  阅读(433)  评论(0编辑  收藏  举报