【问题标题】:Performance info for each commit in GitHub or GitLab CIGitHub 或 GitLab CI 中每个提交的性能信息
【发布时间】:2018-12-27 02:59:33
【问题描述】:

我正在使用 GitLab 托管一个以性能为主要关注点的项目。我目前有测试断言某些任务在给定时间内完成。

我想扩展我的 CI 配置,以衡量特定提交或拉取请求如何影响性能,并以方便的格式(图表、提交的性能变化等)提供信息。

基本上我想要与 coveralls.io 相当的东西,除了性能而不是覆盖率。

我对在 GitHub 或 GitLab 上运行的所有解决方案感兴趣。

请注意,这个问题不是关于如何在 CI 中进行性能测试,而是关于以一种方便的方式呈现获得的数据。

【问题讨论】:

    标签: continuous-integration performance-testing


    【解决方案1】:

    GitHub 或 GitLab 只是源代码控制托管服务,我的期望是您需要一个可以编排构建的软件:

    1. 通过commit hook获取源码
    2. 构建源代码
    3. 运行测试
    4. 发布工件

    这通常由CI server 完成,如果你没有 - 你需要choose it,如果你没有更好的候选人 - 我建议你去Jenkins 这是某种形式的行业标准。

    Jenkins 拥有Performance Plugin,它可以为以下格式构建性能趋势图表:

    因此,如果您的测试以上述格式之一产生结果,您将能够获得如下图表:

    此外,您还可以根据不同的标准(错误百分比、响应时间超过阈值、当前构建结果比以前差等)有条件地将构建标记为失败。

    【讨论】:

    • 在阅读了链接的工具之后,它们似乎都是为 HTTP 服务器测试而制作的。我的基准测试是使用 JMH 进行的。你知道从 JMH 结果生成 Jenkins Performance 插件报告的简单方法吗?
    猜你喜欢
    • 2016-04-30
    • 1970-01-01
    • 2021-04-15
    • 1970-01-01
    • 1970-01-01
    • 2022-08-14
    • 2019-08-11
    • 2017-11-27
    • 2021-06-26
    相关资源
    最近更新 更多