设置 - 使用jenkins参数testApp和testEnv的jenkins作业。执行批处理如下所示:
C:\jmeter\apache-jmeter-3.2\bin\jmeter.bat -n -t
C:\JMeter\Scripts\API_scripts\%testApp%.jmx -Jtestenv=%testEnv% -JtestApp=%testApp% -JtestBrowser=NA -l
C:\AUTO_Results\jtl\%testApp%_%testEnv%.jtl
构建后操作
使用全局规则解析控制台输出(构建文件),以便在Jenkins控制台窗口中记录的失败将认为JMeter脚本失败。 (讨论Jenkins shows JMeter script failure even though the script actually passed)
触发参数化构建 - 这是一个单独的jmeter脚本,可以使用PASS / FAIL更新Wiki页面并上传JMeter报告。
问题 - 如何让下游触发构建使用上游脚本中的参数?我设置了Parameter = Current构建参数,但它没有应用这些参数。另外,在上游构建完成之前,我不知道testResult参数的值。我尝试将%testResult%= PASS添加到'预定义参数'框
答案 0 :(得分:1)
根据Parameterized Trigger Plugin页面:
参数部分可以包含以下一项或多项的组合:
一组预定义属性
从触发构建的工作空间读取的属性文件中的属性
- 当前版本的参数
- Subversion修订:确保触发的项目使用触发构建的相同修订版构建。您仍然必须确保这些项目实际配置为检出正确的Subversion URL。
- 将矩阵执行限制为子集:允许您指定与在矩阵项目配置中使用的相同的组合过滤器表达式,并进一步限制要运行的下游矩阵构建的子集。
所以你基本上需要复制你想要在当前的“下游”工作中拥有的参数。
作为当前性能插件限制的解决方法,您可以考虑使用Taurus工具作为包装器运行JMeter,它具有灵活且功能强大的pass/fail criteria子系统,它基本上将返回Jenkins非零退出代码触发在测试中出现问题时构建失败。如果一切顺利,金牛座退出代码将为0,詹金斯认为这是成功的。查看How to Run Taurus with the Jenkins Performance Plugin文章了解更多详情。