Jenkins如何控制多个Job进行依赖(不允许同时出现资源争抢)

本文介绍如何使用Jenkins的LockableResources插件解决UI自动化测试中的资源争抢问题。通过实例演示了插件的安装、配置过程,并展示了如何为不同任务设置锁以避免资源冲突。

前言

问题来源: 当我们执行UI自动化测试时可能会涉及到,一台手机跑多个用例的过程亦或者多个APP的过程测试,但是一台手机只允许一个模块或者一个APP的自动化测试,因此JOB之间存在着手机资源的争抢问题,为了防止两个模块被同时进行(因为可能不是自己操作,自己操作会主动去看下,但是不清楚的业务测试同学我们需要帮他们去规避这个问题)

一、安装插件

安装 Lockable Resources 插件,插件的主要功能
在这里插入图片描述
安装完毕后进行重启Jenkins

配置插件

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
根据自己需要给资源起个Name 和标签即可,应用并保存

配置JOB

  1. 给需要加锁的JOB配置好锁名,如图UI_Auto_Search JOB构建时需要占用到search锁,且
Jenkins 中,可以通过配置项目以允许多个构建同时运行。默认情况下,Jenkins 会禁用并发构建,这意味着如果一个构建任务已经在运行,其他触发的构建请求将进入等待状态,直到当前构建完成。要启用并发构建,需要在项目配置中进行调整。 ### 配置 Jenkins 允许多个构建同时运行的方法 #### 1. 在流水线脚本中启用并发构建Jenkins Pipeline 中,可以通过设置 `disableConcurrentBuilds(false)` 来启用并发构建功能。此配置允许同一任务的多个构建同时运行。 ```groovy pipeline { agent any options { disableConcurrentBuilds(false) } stages { stage('Build') { steps { sh 'echo Building...' } } } } ``` 通过这种方式,可以确保 Jenkins 会限制同一任务的多个构建同时执行,从而提高任务的执行效率 [^1]。 #### 2. 在自由风格项目中启用并发构建 对于自由风格的 Jenkins 项目,可以通过以下步骤启用并发构建: - 登录 Jenkins 管理界面。 - 打开需要配置的项目。 - 点击 **Configure**。 - 在 **General** 部分勾选 **Do not allow concurrent builds** 选项的取消选中状态(即取消勾选)。 - 保存配置。 取消勾选后,Jenkins允许该任务的多个构建同时运行。 #### 3. 控制并发数量 如果需要对并发数量进行限制,可以使用 Jenkins 插件(如 Throttle Concurrent Builds 插件)来控制并发执行的构建数。安装插件后,在项目配置页面中找到 **Throttle Concurrent Builds** 选项,并设置最大并发数。此功能适用于需要限制资源争抢的场景,例如多个任务共享一台设备时 [^3]。 ### 注意事项 - 在启用并发构建时,需确保构建任务会因为共享资源(如数据库、设备等)而发生冲突。例如,多个构建同时操作同一台设备可能导致测试失败 [^3]。 - 如果任务依赖某些全局资源,建议结合插件对并发行为进行控制,以避免资源争抢问题。 ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值