Process JTL logs阶段报groovy.lang.MissingPropertyException: No such property: jtl错误
问题原因与解决方案
你遇到的groovy.lang.MissingPropertyException: No such property: jtl for class: java.lang.String报错和perfReport配置的参数逻辑无关,基本都是Groovy语法解析或者插件运行环境的问题,你当前的perfReport参数配置是满足「对比当前构建与历史构建性能测试结果」需求的,compareBuildPrevious: true以及配套的异常构建忽略参数的设置都是正确的。
报错的常见排查修复步骤如下:
- 给perfReport的所有参数加上括号,避免Groovy解析多行无括号方法调用时出现误判,修改后的代码示例如下:
stage("Process JTL logs") { agent {node 'Test_Node'} steps { sh 'echo "Processing Test logs"' /* * Use the Performance Plugin to process the .jtl log file. */ perfReport( compareBuildPrevious: true, filterRegex: '', ignoreFailedBuilds: true, ignoreUnstableBuilds: true, modeOfThreshold: true, relativeFailedThresholdPositive: 80.0, relativeUnstableThresholdPositive: 80.0, sourceDataFiles: "/testFolder/apache-jmeter-5.4.1/output/Report-$BUILD_NUMBER.jtl" ) } }
- 登录到
Test_Node节点,检查对应构建编号的.jtl文件是否真实存在于你配置的路径下,确认Jenkins运行用户对该文件有可读权限 - 如果以上操作后仍然报错,升级Jenkins的Performance Plugin到最新稳定版,部分旧版本对参数化调用perfReport的支持存在缺陷。
内容的提问来源于stack exchange,提问作者anew10
相关产品推荐
相关产品推荐

