jmeter.functions.FileToString没有找到文件位置
在JMeter的我传递多个JSON输入作为主体,变量名称被定义为JSON_FILE和从CSV数据配置来jmeter.functions.FileToString没有找到文件位置
${__FileToString(${__eval(${JSON_FILE})}.json,,)}
CSV数据
designO1015643320
.
.
designO1077673985
designO1088516727
从Jmeter运行负载测试UI工作正常,但作为运行mvn项目提供有关FileNotFoundException
错误,即使.csv文件和.json文件是我n的.jmx从.jmx.log文件
错误相同的文件夹:
WARN - jmeter.functions.FileToString:无法读取文件:designO1015643320.json文件 'designO1015643320.json' 不存在java.io.FileNotFoundException:文件 'designO1015643320.json' 不存在在.jtl
响应:
httpSample t =“4”lt =“0”ts =“1508530091457”s =“false”lb =“CreateDesign_PUT”rc =“非HTTP响应代码:org.apache.jorphan.util.JMeterStopThreadException”rm =“非HTTP响应消息:序列结束 “由= ”1822“ NG = ”1“ NA = ”1“/>
JMeter的GUI默认的相对路径是” TN = ”Design_APIs 1-1“ DT =” 文本bin文件夹
相对路径相对于当前工作目录(默认为bin /目录)被解析。在不同的默认路径
Maven的搜索文件src/test/jmeter
目录
见guide:
在src /测试/ JMeter的目录。运行项目时,JMeter Maven插件会搜索要在此目录中运行的测试。
,你可以找到这个路径dynamically
听说Groovy is a new black所以我会建议与__groovy() function,相对于Maven的插件当前工作目录的文件路径动态获取Groovy的等同替换您__FileToString()函数将如:
${__groovy(new File(org.apache.jmeter.services.FileServer.getFileServer().getBaseDir() + System.getProperty('file.separator') + vars.get('JSON_FILE') + '.json').text,)}
请参阅JavaDoc on FileServer class了解更多详情。
由于您未指定文件的路径,因此它正在当前目录中查找它。当你在本地运行并使用Maven时,当前目录很可能不同,因此它找不到该文件。 您必须以某种方式传递路径,或者使其在两种情况下都具有通用性(例如绝对路径或PATH上的路径) –