跟踪多次运行的testng测试性能

时间:2018-09-04 18:01:46

标签: java performance testng performance-testing performance-monitor

我正在考虑扩展现有的CI,它使用testng作为测试框架。我有一套测试,其性能(每个测试所用的时间)希望跟踪每个测试的性能以及每个测试随时间的变化。例如,在运行该套件5次之后,我可以看到我的测试是好是坏。

我知道testng默认情况下会输出包含 time 属性的xml报告。目前,我在testng的documentation中看不到有什么可以解决的。

目前,我在想唯一的方法是提取相关信息(方法/类名和时间),并将其编译为一个单独的文件,以供日后报告。您知道更好的内置解决方案吗?

<testsuite name="PerformanceTests" tests="1" failures="0" timestamp="26 Apr 2018 17:05:51 GMT" **time="356.232"** errors="0">
  <testcase name="testModifyFail" time="2.127" classname="PerformanceTests"/>
<testsuite/>

1 个答案:

答案 0 :(得分:0)

  1. TestNG可以在JUnit format中输出测试结果
  2. Jenkins有Performance Plugin,可以构建性能统计信息和趋势图并将其添加到构建仪表板。从理论上讲,如果某些指标超过可接受的阈值,您甚至可以将构建标记为不稳定或失败。

因此,您可以将性能插件配置为从test-output/junitreports读取结果,它应该可以为您解决问题。

请查看How to Use the Jenkins Performance Plugin,以了解有关将性能测试结果添加到CI管道的概念的更多信息。