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

如何从.Jenkins文件读取参数供Selenium Java框架的.Java文件使用

从Jenkins传递Bearer Token到Java Selenium框架并用于API请求

步骤1:在Jenkins Pipeline中把参数传递给Java构建

你已经定义了BearerToken参数,接下来需要在Pipeline脚本里将这个参数传递给Java项目的构建过程,推荐用JVM系统属性或者环境变量的方式:

用Maven传递系统属性的Pipeline示例

pipeline {
    agent any
    parameters {
        string name: 'envUnderTest', defaultValue: 'uat'
        string name: 'BearerToken', defaultValue: 'XXXXXX'
    }
    stages {
        stage('Run Tests') {
            steps {
                // 将Jenkins参数作为JVM系统属性传入
                sh "mvn test -Dbearer.token=${params.BearerToken} -Dtest.env=${params.envUnderTest}"
            }
        }
    }
}

步骤2:在Java代码中读取Token并发起API请求

在你的Java测试或业务代码里,直接读取Jenkins传递过来的系统属性,然后添加到API请求的Authorization头中:

import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;

public class ApiRequestHandler {
    public void executeAuthorizedApi() throws Exception {
        // 读取Jenkins传递的Bearer Token
        String bearerToken = System.getProperty("bearer.token");
        
        // 校验Token是否存在
        if (bearerToken == null || bearerToken.isBlank()) {
            throw new RuntimeException("未获取到有效的Bearer Token,请检查Jenkins参数配置");
        }

        // 初始化HTTP客户端并发起请求
        try (CloseableHttpClient httpClient = HttpClients.createDefault()) {
            HttpGet request = new HttpGet("https://your-target-api.com/api/endpoint");
            // 设置Authorization请求头
            request.setHeader("Authorization", "Bearer " + bearerToken);
            
            // 执行请求并处理响应
            httpClient.execute(request, response -> {
                String responseContent = EntityUtils.toString(response.getEntity());
                // 这里可以根据需求处理API响应,比如断言、解析等
                System.out.println("API响应内容: " + responseContent);
                return null;
            });
        }
    }
}

可选方案:通过环境变量传递Token

如果更倾向用环境变量,调整Jenkins Pipeline和Java代码即可:

Jenkins Pipeline设置环境变量

pipeline {
    agent any
    parameters {
        string name: 'envUnderTest', defaultValue: 'uat'
        string name: 'BearerToken', defaultValue: 'XXXXXX'
    }
    // 定义环境变量
    environment {
        BEARER_TOKEN = params.BearerToken
    }
    stages {
        stage('Run Tests') {
            steps {
                sh "mvn test"
            }
        }
    }
}

Java代码读取环境变量

String bearerToken = System.getenv("BEARER_TOKEN");

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.17 23:22:49