带遥控器的 Jmeter 分辨率变量

问题描述 投票:0回答:1

我有一个 Jmeter 脚本,在测试计划中定义了一个变量

SCRIPT_DIR  ${__groovy(import org.apache.jmeter.services.FileServer; FileServer.getFileServer().getBaseDir();)}${__groovy(File.separator,)}
INPUT_DIR   ${SCRIPT_DIR}./../data
RESULT_DIR  ${SCRIPT_DIR}./../resultat
RUN_ID  ${__P(runID, ${__time(yyyy'-'MM'-'dd_HH'h'mm'm'ss's',)})}

RESULT_DIR 用于定义我的简单数据写入和我的摘要报告的位置

${RESULT_DIR}${SLASH}${RUN_ID}${SLASH}errors.xml
${RESULT_DIR}${SLASH}${RUN_ID}${SLASH}rapport_summary.csv

我想使用两个实例(VM1 和 VM2)以分布式模式执行我的脚本

在每个虚拟机上,我都启动了我的 jmeter 服务器,它们都正常

[user@vm1]$ ./script/lance_jmeter_with_config_mode_server.sh
Created remote object: UnicastServerRef2 [liveRef: [endpoint:[xxx.xxx.xxx.xxx:45595](local),objID:[2ff2de01:18e896a8f94:-7fff, 7070060110512970506]]]

然后我以远程模式(-r)启动我的脚本,就可以了

$JMETER_HOME/bin/jmeter.sh -r -n -t /home/user/script/myscript.jmx -G$/home/user/config/myconf.properties -j /home/user/resultat/jmeter.log

Starting the test on host xxx.xxx.xxx.xxx @ March 29, 2024 9:54:44 AM CET (1711702484330)

但是在我的目录中,当Jmeter创建“resultat”文件夹时,变量没有被翻译。文件夹名称为“${SCRIPT_DIR}./../”

有什么具体的配置可以解决这个问题吗?

jmeter
1个回答
0
投票

根据用户定义变量文档:

此外,只有在处理元素之后,变量才可用,因此您无法引用同一元素中定义的变量。您可以引用早期 UDV 或测试计划中定义的变量。

因此,如果您想继续采用当前的方法,您需要:

  1. 在第一个用户定义变量中声明
    SCRIPT
  2. 使用用户定义变量的第二个实例声明
    INPUT_DIR
    RESULT_DIR

更多信息:使用用户定义变量

© www.soinside.com 2019 - 2024. All rights reserved.