【问题标题】:Is it feasible to run multiple instances of a single Jenkins job?运行单个 Jenkins 作业的多个实例是否可行?
【发布时间】:2017-03-23 07:08:03
【问题描述】:

我与 Jenkins 的接触不多。现在,我正在尝试通过在我们的项目中实施来学习它。

我们有一个预先存在的用于测试框架的 Maven-Jenkins 集成。我们通过 Jenkins 部署了一堆测试作业(P0Job、P1Job、P2Job、P3Job)。 他们都有大约 20-100 个测试。

目前,这些作业中的所有测试都一一运行。在 Jenkins 中有什么方法可以并行运行这些测试吗?

示例:假设 P0Job 有 20 个测试。 有没有办法通过 Jenkins 创建并行性,以便同一个作业(P0Job)有多个实例。 它可以让 Instance1:6 测试、Instance2:6 测试、Instance3:8tests 或类似的东西并行运行吗? Jenkins可以支持这样的事情吗?

补充几点:我已经检查了项目参数化。它确实接受参数。

此外,“必要时执行并发构建”也被选中。

基于这篇文章:Jenkins - Running instances of single build concurrently 我还创建了一个多配置项目,但它不会并行启动测试。一开始我不确定我的目标是否可行。

如果是,我该如何解决我的问题。如果不是,其他解决方案是什么?

【问题讨论】:

    标签: maven jenkins parallel-processing


    【解决方案1】:

    将您的测试框架与您自己运行 Jenkins 作业的方式结合起来是个坏主意。

    如果您希望测试中的并行性,您可能应该将其构建到测试框架本身,而不是 Jenkins 配置中。当框架想要按顺序运行测试时,强制测试并行运行可能会影响先决条件(例如,测试 #2 可能需要测试 #1 的成功结果才能成功运行)。

    【讨论】:

    • 我明白你的意思,是的,我们还有其他方法可以并行引入多个 WebDriver 实例。但是考虑到我们的框架,这是一项巨大的努力,因此我们正在考虑这是否是一个暂时适合我们的好主意。此外,我们的测试是这样编写的,它们之间没有依赖关系。
    • 你试过明显的吗? Parallel Test Executor Plugin
    • 还没有.. 但即将。谢谢史蒂夫!
    猜你喜欢
    • 1970-01-01
    • 2015-12-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-24
    • 1970-01-01
    相关资源
    最近更新 更多