Jenkins - 以节点为中心的测试

Jenkins - Node focused testing

最近刚开始使用 Jenkins,我已经能够使它满足我的需要,但它还不够完美。

关于我正在使用 Jenkins 做的事情以及我想要完成的事情。

我有: - 具有多种系统(400+系统)和所有不同操作系统(Windows和Linux的多个版本的测试实验室 - python 脚本的独立测试套件,用于测试每个系统上的各种功能(100 多个测试)。

我在做什么: - 我目前设置了几个 Jenkins 作业以在单个测试节点上启动我的独立测试套件。 - 然后我有另一组 Jenkins 作业,它们所做的就是收集所有系统以 运行 一个作业,然后在所有需要的节点上从第一组开始正确的作业。

这对我来说很管用,但在结果方面却不太管用。

在结果方面,由于所有 400 多个构建都是 运行 来自 2 个作业,如果任何测试节点上的任何一个测试失败,作业就会显示失败。

我需要逐个节点地查看事情的趋势。我知道我可以为每个节点创建一个作业,但那将是 400 多个作业,如果我需要添加更多节点或对作业进行轻微更改,这将无法扩展或维护。

如果我的描述不清楚,请告诉我,以便我澄清。我真正想知道的是,是否有一种现有的方式插件可以满足我的需求,我是否可以开发一个插件来执行此操作,或者是否有一个完全不同的工具可供我使用?

您可以尝试一些可能适合您需要的想法

矩阵

矩阵作业允许相同的作业 运行 用于不同的参数。其中一个参数是 node/label,它限制轴 运行 在哪个节点上(仅当您有多个节点时才可用)。

多个

Multijob 使用标准作业并将它们 运行 放入包含作业中。你可以分阶段工作并有条件行为

工作 DSL

以编程方式构建和重建您的作业,包括矩阵作业和多作业