Jenkins Pipeline - Jmeter性能报告

时间:2017-04-12 19:20:24

标签: jenkins groovy jmeter jmeter-plugins

我有以下Jenkins管道脚本来运行jmeter测试并从JTL文件生成报告

select t.*
from t
where 'AB45.632' not between `from` and `to`;

最初我尝试使用node('master') { stage 'Run JMeter Test' def workspace = pwd() def jmeterTestFile = 'jenkins_test' echo "workspace = ${workspace}" echo "env.WORKSPACE = ${env.WORKSPACE}" bat "${workspace}\\jmeter\\bin\\jmeter.bat -n -t ${workspace}\\jmeter_scripts\\${jmeterTestFile}.jmx -l ${workspace}\\jmeter_scripts\\${jmeterTestFile}_results.jtl" step([$class: 'ArtifactArchiver', artifacts: 'CP-Perf-Report.html,**/*.jtl, **/jmeter.log', fingerprint: true]) //perfReport "jmeter_scripts\\${jmeterTestFile}_results.jtl" performanceReport parsers: [[$class: 'JMeterParser', glob: "jmeter_scripts\\${jmeterTestFile}_results.jtl"]], relativeFailedThresholdNegative: 1.2, relativeFailedThresholdPositive: 1.89, relativeUnstableThresholdNegative: 1.8, relativeUnstableThresholdPositive: 1.5 } 命令创建报告但是perfReport "jmeter_scripts\\${jmeterTestFile}_results.jtl"失败了,所以我尝试使用FileNotFoundException替代方法,但即便如此,它再次失败performanceReport parsers但我可以手动打开FileNotFoundException文件并查看测试报告。任何人都可以帮我解决这个问题吗?

c:\tools\jenkins\workspace\PerformanceTesting\jmeter_scripts\jenkins_test_results.jtl

1 个答案:

答案 0 :(得分:0)

我没有看到在日志中运行JMeter测试的任何迹象,因此我建议修改您的管道脚本,如下所示:

  1. \\斜杠转换为/
  2. 鉴于您在Windows上运行测试,我认为您应该使用%WORKSPACE%而不是${workspace}
  3. 形式的变量

    请参阅以下指南以获取参考: