在 jMeter 中复制一个文件 10 次

copy a file 10 times in jMeter

为了为我的 jMeter 测试复制一个 xml 文件,我在一个名为 LC

的循环控制器中创建了这个 groovy 脚本
number = (vars.get("__jm__LC__idx") as int) + 1; // get the current iteration and add 1
target = vars.get("fileName") + number;
cp(vars.get("fileName"), target);

fileName 是作为 C:/MyDir/Verkehr.xml.

传递给我测试的环境变量

但是在执行该测试时出现以下错误:

Response message:javax.script.ScriptException: groovy.lang.MissingMethodException: No signature of method: org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.cp() is applicable for argument types: (String, String) values: [C:/MyDir/Verkehr.xml, C:/MyDir/Verkehr.xml41] Possible solutions: any(), grep(), dump(), get(java.lang.String), put(java.lang.String, java.lang.Object), is(java.lang.Object)

我想要的是Verkehr.xml1(实际上是Verkehr1.xml,但这对这个问题来说太过分了)。

我不知道 cp 是什么,如果它是一些自定义功能,请确保提供此功能的 class 在 JMeter Classpath

如果您没有此 cp 实施 - 最简单的方法是 FileUtils.copyFile() function,例如:

org.apache.commons.io.FileUtils.copyFile(new File(vars.get("fileName")), new File(vars.get("fileName") + number))

有关 JMeter 中 Groovy 脚本的更多信息:Apache Groovy - Why and How You Should Use It