Jmeter和Filewriter—添加日期+;文件名的时间戳

Jmeter和Filewriter—添加日期+;文件名的时间戳,jmeter,filewriter,beanshell,Jmeter,Filewriter,Beanshell,我已经创建了一个jmeter,它在我的站点上下订单,并记录订单状态和确认号。预订订单后,我使用BeanShell后处理器将提取的变量打印到文件中。我真的很想能够添加一个日期的文件名,但我一直无法找到一种方法来做到这一点 这就是我的Bean Shell后处理器的外观: FileWriter fstream = new FileWriter("C:\\JMeter\\Results\\log.csv",true); BufferedWriter out = new BufferedWriter(fs

我已经创建了一个jmeter,它在我的站点上下订单,并记录订单状态和确认号。预订订单后,我使用BeanShell后处理器将提取的变量打印到文件中。我真的很想能够添加一个日期的文件名,但我一直无法找到一种方法来做到这一点

这就是我的Bean Shell后处理器的外观:

FileWriter fstream = new FileWriter("C:\\JMeter\\Results\\log.csv",true);
BufferedWriter out = new BufferedWriter(fstream);
out.write(vars.get("scriptName"));
out.write(System.getProperty("line.separator"));
out.write("STATUS: " + vars.get("status"));
out.write(System.getProperty("line.separator"));
out.write("Confirmation Number: " + vars.get("ConfirmationNumber"));
out.write(System.getProperty("line.separator"));
out.write("");
out.write(System.getProperty("line.separator"));
out.write("");
out.close();
fstream.close();
我曾尝试在文件名中插入变量,但我怀疑我做得不对,因为甚至没有创建任何文件

完整免责声明(鉴于我上面的示例代码,这可能是不必要的):我不是一个代码人,所以请原谅我的劣质代码


提前感谢。

您可以在开头设置一个属性,以后可以附加到文件名中

${__P(UNIQUEID,${__time(YMDHMS)})}
然后您可以将您的行更改为以下内容

    FileWriter fstream = new FileWriter(vars.get("CWD") + "/JMeter/results/log${UNIQUEID}.csv", true);
在上面的代码中,CWD是我在开头设置的另一个变量,它指向Jmeter启动的当前目录

import org.apache.jmeter.services.FileServer; 

String sCWd = new String(FileServer.getFileServer().getBaseDir());
log.info("CWDString=" + sCWd.replace("\\", "/"));
vars.put("CWD", sCWd.replace("\\\\", "/"));

谢谢你的时间,塞尔瓦。这正是我所需要的,但我不确定如何设置${uuu P(UNIQUEID,${uu时间(YMDHMS)}})属性以便使用它。我试着将它添加到user.properties文件中,但看起来不是这样。根据你的建议,我想出了一种不同的方法来实现这一点,非常感谢!您可以在测试计划的顶部添加“用户定义变量”配置元素,并添加一行并定义它。名称:UNIQUEID,值:${uu P(UNIQUEID,${uu时间(YMDHMS)}}