我正在尝试从CSV文件名设置变量,特别是修改了最后日期的文件。 CSV文件基于我的测试数据,因此该文件将不断变化。我已经尝试过这段代码,但我似乎无法将其保存为变量。
public static File getLatestFilefromDir(String dirPath) {
File dir = new File(dirPath);
File[] files = dir.listFiles();
if (files == null || files.length == 0) {
return null;
}
File lastModifiedFile = files[0];
for (int i = 1; i < files.length; i++) {
if (lastModifiedFile.lastModified() < files[i].lastModified()) {
lastModifiedFile = files[i];
}
}
return lastModifiedFile;
}
String fileName = lastModifiedFile;
vars.put("FILENAME", fileName);
感谢您的帮助。
答案 0 :(得分:1)
我建议使用以下Groovy代码获取指定文件夹中最新文件的名称,并将结果保存到FILENAME
JMeter变量中:
vars.put("FILENAME", new File('/path/to/the/folder/with/CSV/files').listFiles()?.sort { -it.lastModified() }?.head().getName())
您可以将此代码与JSR223 Test Elements
中的任何一个一起使用有关在JMeter测试中使用Groovy脚本的更多详细信息,请参阅Apache Groovy - Why and How You Should Use It文章。
答案 1 :(得分:0)
您的代码的修复程序是将文件转换为其名称
String fileName = getLatestFilefromDir("...").getName();