在开始配置前,需确保CentOS系统已安装**Java(Jenkins依赖)、Git(代码管理)、Maven/Gradle(构建工具,可选)**等基础软件。以Java为例,安装命令如下:
sudo yum update -y
sudo yum install java-11-openjdk-devel -y # 推荐使用Java 11及以上版本
java -version # 验证安装(显示版本信息即成功)
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
sudo yum install jenkins -y
sudo systemctl start jenkins
sudo systemctl enable jenkins
http://<服务器IP>:8080,首次访问需输入初始管理员密码(路径:/var/lib/jenkins/secrets/initialAdminPassword),完成初始设置(如安装推荐插件)。进入Manage Jenkins > Global Tool Configuration,配置以下工具路径(若未提前安装,可在配置页面直接勾选“Install automatically”):
/usr/lib/jvm/java-11-openjdk);/usr/bin/git);/usr/share/maven)。Jenkins支持Freestyle Project(适合简单任务)和Pipeline(适合复杂流水线)两种任务类型,以下分别说明:
New Item,输入任务名称(如api-automated-test),选择Freestyle project,点击OK。Source Code Management section选择Git,输入代码仓库URL(如https://github.com/your-repo/api-tests.git),并配置凭证(若仓库私有)。Build when a change is pushed to GitLab/GitHub(需提前配置Webhook,见下文);Poll SCM并设置时间表达式(如H/5 * * * *表示每5分钟检查一次)。Add build step,选择Execute shell(Shell脚本)或Invoke top-level Maven targets(Maven命令),输入测试命令:
mvn clean test;mvn test -Dtest=YourTestClass(指定测试类)。Post-build Actions section点击Add post-build action,选择Publish JUnit test result report,输入测试报告路径(如target/surefire-reports/*.xml,JUnit默认生成路径)。Pipeline类型,点击OK。Pipeline script(直接编写脚本)或Pipeline script from SCM(从代码仓库拉取脚本)。以下是Jenkinsfile示例(支持Shell和Maven):pipeline {
agent any // 使用任意可用节点
stages {
stage('Checkout') {
steps {
git 'https://github.com/your-repo/api-tests.git' // 检出代码
}
}
stage('Build') {
steps {
sh 'mvn clean install' // 编译项目
}
}
stage('Run Tests') {
steps {
sh 'mvn test' // 运行测试
}
}
}
post {
always {
junit 'target/surefire-reports/*.xml' // 发布测试报告(无论成功失败都执行)
echo '测试完成,报告已生成'
}
success {
echo '测试通过!'
}
failure {
echo '测试失败,请检查日志'
}
}
}
Build Now即可启动测试。Settings > Webhooks中添加URL(格式:http://<Jenkins服务器IP>:8080/github-webhook/),选择Push events(代码推送时触发);Build Triggers中勾选GitHub hook trigger for GITScm polling(GitHub)或对应GitLab选项。Build History中点击构建编号,可查看构建详情。Console Output查看测试执行日志(如测试用例通过/失败情况)。Test Result查看JUnit生成的测试报告(包含通过率、失败用例详情等)。parallel指令并行运行多个测试套件,缩短执行时间。Docker Plugin在Jenkins中配置Docker容器运行测试,确保环境一致性(如使用docker run启动测试容器)。Email Extension Plugin或Slack Notification Plugin,在测试失败时发送通知给开发团队。通过以上步骤,即可在CentOS上使用Jenkins实现自动化测试,覆盖代码提交、构建、测试、报告全流程,提升测试效率与代码质量。