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

如何在Jenkins上显示性能测试结果,jenkins,jenkins-plugins,Jenkins,Jenkins Plugins,我们已经编写了一个框架来测试Java应用程序的性能(现有的框架,例如JMeter,都不合适)。该框架生成各种度量,例如平均/最小/最大每秒事务数 我们希望每个Jenkins构建都显示这些指标,以便跟踪提交是否提高了性能 我不知道该怎么做 一个想法是修改我们的性能测试框架以输出一个HTML文件,然后让Jenkins在构建结果页面上显示/链接到它 感谢您的建议。可以用漂亮的图形方式显示JMeter和JUnit测试的结果。在插件页面上有一个关于如何使用它的描述 这是一个托管在上的开源插件。JUnit和

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

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

我不知道该怎么做

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

感谢您的建议。

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

这是一个托管在上的开源插件。JUnit和JMeter解析器已经存在,但是您可以通过子类化实现自己的解析器。这很简单,你可以直接完成回购并开始实施。

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

现在谈谈你的直接问题:你可以简单地将你的HTML文件归档为一个工件(有一个标准的编译后步骤来完成)。然后,将在构建的工件中显示指向它的链接。有指向最新工件和最新成功构建工件的永久链接:

http://[server]/job/[job_name]/lastCompletedBuild/artifact/foo.html
http://[server]/job/[job_name]/lastSuccessfulBuild/artifact/foo.html
您可以将这些链接添加到书签中,并可以轻松快捷地一键访问结果。

您可以使用发布生成的HTML页面。这将是非常简单的

如果您想要更好的集成,可以尝试创建与JMeter生成的格式相同的输出,并使用性能插件


为了获得最佳效果,您可以接受Łukasz的建议,并根据您的需要修改性能插件。当然,这需要您付出最大的努力。

如果我们使用JUnit或JMeter来运行测试,那么该插件将非常有用。但是我们的性能测试完全是自主开发的,所以我认为这个插件对我们没有帮助。是的,但它是开源的。只需根据自己的需要修改插件!有任何示例实现吗?喜欢除了Jmeter参数之外的其他输入吗?如果使用其他工具很容易仿真,那么对于每个
httpSample
t
是响应时间,
ts
是从历元开始的毫秒,
s
是布尔值表示成功,而
lb
是您的URI或类似的分组标签。这不会给您提供不同构建之间的真正比较,而是提供即时报告。为了真正理解构建之间性能测试的变化,必须在某个地方构建数据,例如在DB中。@ukaszRżanek:当然,但这就是我理解这个问题的方式:HTML是定制的。因此解析结果很容易——我想那些HTML文件的作者对它们非常了解。但是插件不一定能以一种将所有结果按需要组合在一起的形式显示指标。你真的浏览了插件页面吗?最好的快速破解是在您的工作描述中转储html,并使用上一次构建的相关链接等。例如,使用性能插件