我想根据当前日期为结果创建文件夹名称。我用这个值创建了一个变量:
${__groovy(new Date().format('yyyy-MM-dd'))}
在测试计划级别的用户定义变量中。
如果我在本地运行测试,它会完美运行 - 创建文件夹(例如2018-01-11)。
但是只要在分布式模式下运行测试,就会创建文件夹,但名称为
${__groovy(new Date().format('yyyy-MM-dd'))}
。
任何帮助?
答案 0 :(得分:0)
"我建议在主节点上运行JMeter测试(将收集所有从属的结果)。如果要根据当前日期创建文件夹,可以使用操作系统shell方法将此文件夹设置为:
在Windows上:
jmeter -r -n -t test.jmx -l %date:~10,4%_%date:~4,2%_%date:~7,2%\result.jtl
在Linux / Unix / MacOSX上
./jmeter -r -n -t test.jmx -l `date +%Y-%m-%d`/result.jtl
您should not be using any Listeners因为他们没有添加任何值,但会产生不必要的开销,这可能会破坏您的测试。
更多信息:
答案 1 :(得分:0)
解决方案是将值保存到属性中而不是保存到变量中,特别是保存了
props.put("current_date_property", new Date().format('yyyy-MM-dd'));
进入TestPlan级别的JSR223 PostProcessor。
我仍然不知道为什么它对变量不起作用。但它解决了我的问题。