我正在使用 Jenkins 构建具有多个从节点的测试系统。我有多个测试用例,每个测试用例的运行时间都超过 15 分钟。
我想以这样一种方式制作系统,当我开始测试时,Jenkins 在一个免费的节点中运行每个测试用例,最后收集和总结测试结果。
我已经打开了一个 Jenkins 作业,它是一般的测试用例作业,它是参数化的,其中参数是“测试名称”。但我看到詹金斯正在按顺序执行这些工作。
如何配置 Jenkins 以并行运行相同作业(使用不同参数)的构建?
我正在使用 Jenkins 构建具有多个从节点的测试系统。我有多个测试用例,每个测试用例的运行时间都超过 15 分钟。
我想以这样一种方式制作系统,当我开始测试时,Jenkins 在一个免费的节点中运行每个测试用例,最后收集和总结测试结果。
我已经打开了一个 Jenkins 作业,它是一般的测试用例作业,它是参数化的,其中参数是“测试名称”。但我看到詹金斯正在按顺序执行这些工作。
如何配置 Jenkins 以并行运行相同作业(使用不同参数)的构建?
并行的简单语法:
pipeline {
stages {
stage('Run Tests In Parallel') {
parallel {
stage('Projects Test 1') {
agent {
node { label "your jenkins label" }
}
steps{
script {
your test 1
}
}
post{
always {
script {
echo ' always'
}
}
}
}
stage('Projects Test 2') {
agent {
node { label "your jenkins label" }
}
steps{
script {
your test 2
}
}
post{
always {
script {
echo ' always'
}
}
}
}
}
}
}
}
嗨,您可以在 jenkins 中使用并行运行的并行阶段。在每个阶段也使用 agent any,因此它将使用任何空闲节点。
查看Parallel Stages文档以获取更多信息