use*_*610 5 java testing jenkins maven-surefire-plugin
我发现了 Surefire 中的 rerunFailingTestsCount 功能(提交)。当测试失败时,运行程序会尝试重新运行指定的次数。如果这些重新运行中的任何一个成功,则测试被视为通过,但不稳定。
\n\n此功能实现了对 JUnit XML\xc2\xa0report 格式的扩展,并在测试结果中添加了附加属性。
\n\n如何配置 Jenkins CI 以有意义地显示新获得的有关我的测试的测试数据?
\n\n我希望能够监控我的不稳定测试,这样我就可以对正在发生的事情保持总体概述,然后我可以优先修复那些最慢构建的测试。
\n\n仅包含片状测试的构建应该很容易与包含一些失败测试的构建以及仅包含通过测试的构建区分开来。
\n看来你自己已经找到了几乎所有的答案:)
IMO 唯一缺少的是一些 Jenkins 插件,它确实可以根据可靠的报告显示(可视化)片状测试。
确实有这样一个插件,叫做 Flaky Test Handler。
免责声明 - 我还没有亲自尝试过,但它似乎可以完成这项工作。这将是我解决这个问题的最佳选择。
另一种方法是自己创建一个 Jenkins 插件,但这看起来很麻烦。
我能想到的另一种方法是创建一个 Maven 插件,它可以解析 Surefire 插件的结果并创建一些额外的 HTML 报告,并且基于该信息,您可以在 Jenkins 中可视化 HTML 报告(避免编写 jenkins 插件)。
我很久以前使用的最后一种方法是一个 Maven 插件,它再次解析 Surefire 测试的结果并将结果添加到某个数据库(例如 mongo db 或其他数据库)。它只能在 Jenkins 中调用,以便 Jenkins 提供一些附加信息,例如 buildNumber。
稍后,您可以将自己的 UI 调用到 mongo db 并提供有关构建的统计信息(例如之前的构建有 10 个片状测试,此构建有 8 个等等)。