如何在Jenkins上显示性能测试结果

Phi*_*vey 20 jenkins jenkins-plugins

我们编写了一个框架来测试Java应用程序的性能(现有的框架都没有,例如JMeter是合适的).该框架产生各种度量,例如每秒的平均/最小/最大事务.

我们希望每个Jenkins构建都显示这些指标,以便我们可以跟踪提交是否提高了性能.

我无法弄清楚如何做到这一点.

一个想法是修改我们的性能测试框架以输出HTML文件,然后以某种方式使Jenkins在构建结果页面上显示/链接到它.

任何建议都感激不尽.

Łuk*_*nek 13

Peformance插件可以显示JMeter的在漂亮,图形时尚的结果和JUnit测试.在插件页面上有一个关于如何使用它的描述.

这是一个在GitHub上托管的开源插件.JUnit和JMeter解析器已经存在,但您可以通过子类化实现自己的解析器PerformanceReportParser.它非常简单,你可以只分叉回购并开始实施.

  • 是的,但它是开源的.只需根据自己的需要修改插件! (2认同)

mal*_*cot 7

我同意将所有信息压缩成标准格式(如JUnit)很难(如果不是不可能).它们有助于快速识别问题.一旦您知道存在问题 - 您需要更多信息,通常是自由格式或自定义格式,以满足您的特定需求.所以我们使用两个:JUnit可以由Jenkins立即处理以确定构建是否稳定,绘制漂亮的趋势图等.我们还生成一个更详细的HTML报告.

现在回答您的问题:您可以简单地将HTML文件存档为工件(有一个标准的构建后步骤).然后,将在构建的工件之间显示指向它的链接.有最新工件和最新成功构建工件的永久链接:

http://[server]/job/[job_name]/lastCompletedBuild/artifact/foo.html
http://[server]/job/[job_name]/lastSuccessfulBuild/artifact/foo.html
Run Code Online (Sandbox Code Playgroud)

您可以为这些链接添加书签,并快速轻松地一键访问您的结果.


pus*_*shy 6

您可以使用HTML Publisher插件发布生成的HTML页面.这将非常简单.

如果您想要更好的集成,可以尝试创建遵循JMeter生成的相同格式的输出,并使用Performance Plugin.

为了获得最佳效果,您可以根据需要获取Łukasz建议并修改Performance Plugin.当然,这需要您付出最大的努力.