我有几个JMeter jmx文件,每个文件都有一个用groovy编写的初始脚本,我使用一个JSR223预处理器指定文件名为src/test/jmeter/LoadScript.groovy
。没有导入,至少我没有写过,只有标准的apache库。
这在GUI环境中工作得很好。我所有的测试都工作正常,它们共享同一个LoadScript.groovy
文件。
当我尝试使用jmeter-maven-plugin
在maven下运行时,它会崩溃,因为它为groovy文件提供了一个看起来很疯狂的路径。
/home/roger/myproject/target/f4e97418-cbab-4ac8-ac4b-3bfbd686279a/jmeter/bin/src/test/jmeter/LoadScript.groovy
我希望它只使用cwd加上我指定的文件路径。
我将其添加到jmeter-maven-plugin
中,以便使用basedir定义一个属性
<configuration>
<propertiesSystem>
<jmeter-base>${basedir}</jmeter-base>
</propertiesSystem>
</configuration>
并将我对groovy文件的所有引用都更改为在前面包含${jmeter-base}/
。但我仍然得到file not found引用,现在的路径是:
/home/roger/myproject/datamanager-service/target/b9c995e2-699d-4d56-923b-a99afb566cfc/jmeter/bin/${jmeter-base}/src/test/jmeter/LoadScript.groovy
如果这样做成功了,那将是一个糟糕的解决方案,因为它不允许在GUI下运行测试。
我会尝试让maven将文件复制到错误消息中的目录,但其中的UUID是动态生成的,因此据我所知,这是不可能的。
一定有个简单的方法。有人知道是什么吗?
1条答案
按热度按时间pgccezyw1#
JMeter Maven插件:
1.将
src/test/jmeter
文件夹的内容复制到target/jmeter/testFiles
1.将文件服务器的baseDir设置为该文件夹
因此,如果您要使用相对路径-路径必须相对于此文件夹。
最简单和最灵活的方法是在JSR 223测试元素的“File Name”字段中使用以下__groovy()函数:
在所有情况下都将得到解决:
maven verify
的形式运行JMetermvn jmeter:configure jmeter:gui
的形式运行JMeter GUI更多信息:How to Use the JMeter Maven Plugin