访问JMeter脚本路径

是否可以通过变量/属性访问当前脚本的绝对物理路径?似乎没有通过Debug Sampler列出任何内容。

令人讨厌的是,诸如加载CSV文件和JMX Includes之类的操作将当前工作目录用作其相对路径。

回答:

  • 包括控制器

    根据组件参考:

该元素在文件名字段中不支持变量/函数。

但是, 如果在prefix +

filename所给定的位置找不到文件,则控制器尝试打开相对于JMX启动目录(2.3.4之后的JMeter版本)的fileName。

您可以向JMeter传递一个名为includecontroller.prefix的java属性,该属性可用于将目录添加到要包含的JMX文件的前面。

1)在启动控制台的情况下:

-Jincludecontroller.prefix=/full/path/to/jmx/scripts/dir/

2)在GUI的情况下-将其添加到.sh / .cmd / .bat文件或编写包装器文件;

3)在使用Jmeter Ant Task的情况下-设置为单独的属性:

    <jmeter

jmeterhome="${jmeter.home}"

testplan="..."

resultlog="...">

<property name="jmeter.save.saveservice.assertion_results" value="all"/>

<property name="jmeter.save.saveservice.output_format" value="xml"/>

**< property name="includecontroller.prefix" value="..."/>**

</jmeter>

  • CSV数据集配置

    根据组件参考:

相对于活动测试计划的路径来解析相对文件名。

如果以两种不同的方式(例如csvdata.txt和./csvdata.txt)引用同一物理文件,则将它们视为不同文件。如果操作系统无法区分大小写,csvData.TXT也将单独打开。

您可以声明一个包含包含csv数据文件的文件夹的检索参数值的测试计划变量:

例如

    csv.path | ${__P(csv.path, ${__property(user.dir)}${__BeanShell(File.separator,)})}

**CSV Data Set Config**

Filename = ${csv.path}${__P(users-list,)}

从控制台设置:

    -Jcsv.path=/full/path/to/csv/data/dir/

分布式测试设置的设置:

    -Gcsv.path=/full/path/to/csv/data/dir/

以上是 访问JMeter脚本路径 的全部内容, 来源链接: utcz.com/qa/399358.html

回到顶部