You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何编写Python脚本触发Jenkins任务执行

触发Jenkins Selenium任务的Python脚本实现

前置依赖配置

  • Jenkins侧配置:进入目标Selenium任务的设置页,找到「构建触发器」板块,勾选「触发远程构建」,自行设置一个任务专属的触发令牌(后续脚本会用到),保存配置
  • 账号凭证准备:建议用Jenkins API Token替代明文密码,生成路径:Jenkins右上角个人头像→配置→API Token→新建令牌,保存生成的Token值
  • 安装Python依赖:执行命令pip install requests

无参数任务触发脚本

如果你的Selenium任务不需要传入自定义参数,直接用以下脚本:

import requests

# 按需修改以下配置项
JENKINS_URL = "http://你的Jenkins服务地址"
JOB_NAME = "你的Selenium任务名称"
JENKINS_USER = "你的Jenkins账号"
JENKINS_API_TOKEN = "你生成的API Token"
JOB_TRIGGER_TOKEN = "你在任务里设置的远程触发令牌"

# 拼接触发接口地址
trigger_url = f"{JENKINS_URL}/job/{JOB_NAME}/build?token={JOB_TRIGGER_TOKEN}"

# 发送触发请求
response = requests.post(
    trigger_url,
    auth=(JENKINS_USER, JENKINS_API_TOKEN)
)

# 校验触发结果
if response.status_code == 201:
    print("Selenium任务触发成功")
else:
    print(f"触发失败,状态码:{response.status_code},错误信息:{response.text}")

带参数任务触发脚本

如果你的Selenium任务配置了构建参数(比如浏览器类型、测试环境地址等),修改请求逻辑即可:

import requests

# 基础配置项和无参数版本一致,此处省略重复内容
trigger_url = f"{JENKINS_URL}/job/{JOB_NAME}/buildWithParameters?token={JOB_TRIGGER_TOKEN}"

# 填入你要传给Selenium脚本的参数
build_params = {
    "BROWSER": "chrome",
    "TEST_ENV": "staging"
}

response = requests.post(
    trigger_url,
    auth=(JENKINS_USER, JENKINS_API_TOKEN),
    data=build_params
)

# 结果校验逻辑同上
if response.status_code == 201:
    print("带参数的Selenium任务触发成功")
else:
    print(f"触发失败,状态码:{response.status_code},错误信息:{response.text}")

注意事项

  • 触发请求的状态码返回201即代表请求成功,Jenkins会进入排队调度流程,不会立即返回构建结果
  • 如果触发报错403,检查账号是否有任务的构建权限、API Token是否正确、任务触发令牌是否匹配
  • 如果触发报错404,检查Jenkins地址、任务名称是否拼写正确

内容的提问来源于stack exchange,提问作者Anup Sahoo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 06:48:05