持续集成 Jenkins+Ant/shell+Jmeter 框架中,就 Jmeter 脚本中有报错的用例,但是 jenkins 的执行结果仍然是 successful,也就无法触发” 执行失败是发送邮件 “,求大神指导,感谢!

leunggz · 2017年08月17日 · 最后由 果冻 回复于 2018年06月19日 · 6358 次阅读

Jenkins+Ant/shell+Jmeter 框架中,就 Jmeter 脚本中有报错的用例,但是 jenkins 的执行结果仍然是 successful,也就无法触发” 执行失败是发送邮件 “,求大神指导,感谢!

共收到 17 条回复 时间 点赞

jenkins job 执行的成功与否,和脚本中用例的成功与否完全没关系,一毛钱关系都没有

匿名 #17 · 2017年08月17日

想配置用例失败发送邮件可以在 jmeter 的脚本里配置 - 邮件配置仪

在 jmeter 脚本中加入响应断言试试呢

不用 jenkins 的邮件服务更简单,自己用 java 或者 python 写个调邮件服务的小程序,在 JMeter 的断言里调用

jenkins 判断是否失败的标准是 shell 脚本的 exit code 是否为 0。为 0 表示成功,否则失败。

有报错但不会失败,看下是否配置里面没有设置为有报错则 exit code 不为 0 ?

这个要看你的 jenkins 配置,你要让 jenkins 去读你的 jmeter 报告 jtl,推荐插件 performance

皮蛋 回复

感谢您的答复,按照此文已经解决了问题,谢谢🍭

陈恒捷 回复

谢谢您的答复,我现在读取用例执行的结果,如果成功率为 100%,则 exit 0 ,否则则 exit 1,已经解决了问题,谢谢!🍉

谢谢您的答复,我会尝试下你的建议😀

Baozhida 回复

嗯嗯,明白了,谢谢你的解答

槽神 回复

谢谢你的解答,我会尝试下您的建议,谢谢啦😃

leunggz 回复

请问是如何解决的 我参照这个地址的内容进行了修改

但是 Jenkins 输出报错

我的也是执行报错了:
D:\Program\Jenkins\workspace\test04\results>findstr "100.00" TestReport.html
此时不应有 else(。

D:\Program\Jenkins\workspace\test04\results> ) else(
Build step 'Execute Windows batch command' marked build as failure

尝试多次,只要 exit 不为 0,都会报错:
Build step 'Execute Windows batch command' marked build as failure

请问下这一句具体如何写,谢谢!



我这解析乱码

楼主问题怎么解决的。
cd ..
cd APImonitor
findstr /C:"100.00%%" "report\html*.html"
if errorlevel 1
(exit 1)
else
(exit 0)
我这个要报错


可以试一下把 PublishPerformance test result report 加上,设置错误到多少时作为失败。

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册