Ubuntu Jenkins如何测试脚本
导读:Ubuntu环境下使用Jenkins测试脚本的完整流程 1. 准备基础环境 在Ubuntu系统上,首先需要安装Jenkins及必要的依赖工具: 安装Java:Jenkins依赖Java运行环境,推荐使用OpenJDK 11:sudo ap...
Ubuntu环境下使用Jenkins测试脚本的完整流程
1. 准备基础环境
在Ubuntu系统上,首先需要安装Jenkins及必要的依赖工具:
- 安装Java:Jenkins依赖Java运行环境,推荐使用OpenJDK 11:
sudo apt update & & sudo apt install -y openjdk-11-jdk - 安装Jenkins:通过官方仓库添加Jenkins并安装:
wget -q -O - https://pkg.jenkins.io/debian/jenkins.io.key | sudo apt-key add - sudo sh -c 'echo deb http://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list' sudo apt update & & sudo apt install -y jenkins - 启动服务:启动Jenkins并设置开机自启:
sudo systemctl start jenkins & & sudo systemctl enable jenkins
2. 配置Jenkins基础设置
- 访问Web界面:浏览器输入
http://< 服务器IP> :8080,使用初始管理员密码(通过cat /var/lib/jenkins/secrets/initialAdminPassword获取)登录。 - 安装必要插件:进入“Manage Jenkins”→“Manage Plugins”,安装以下插件:
- Pipeline:用于定义自动化流程;
- Git Plugin:集成Git代码仓库;
- JUnit Plugin:解析JUnit格式的测试报告;
- HTML Publisher Plugin:发布HTML格式的详细测试报告(可选但推荐)。
3. 创建Jenkins Pipeline项目
- 新建任务:点击“New Item”,输入项目名称(如
MyTestProject),选择“Pipeline”类型,点击“OK”。 - 配置Pipeline:
- 代码仓库:在“Pipeline” section选择“Pipeline script from SCM”,SCM类型选“Git”,填写代码仓库URL(如
https://github.com/your-repo/your-project.git),并配置访问凭证(若仓库为私有)。 - Jenkinsfile路径:在“Script Path”中填写项目根目录下的
Jenkinsfile文件名(Jenkins会自动从仓库拉取该文件)。
- 代码仓库:在“Pipeline” section选择“Pipeline script from SCM”,SCM类型选“Git”,填写代码仓库URL(如
4. 编写Jenkinsfile定义测试流程
在项目根目录创建Jenkinsfile,定义**Checkout(拉取代码)、Build(构建项目)、Test(运行测试)、Publish(发布报告)**等阶段。示例如下:
pipeline {
agent any // 使用任意可用节点执行任务
stages {
stage('Checkout') {
steps {
git url: 'https://github.com/your-repo/your-project.git', branch: 'main' // 拉取指定分支代码
}
}
stage('Build') {
steps {
sh './build.sh' // 执行项目构建脚本(如编译、打包)
}
}
stage('Test') {
steps {
sh './run-tests.sh' // 执行测试脚本(如单元测试、Selenium测试)
}
post {
always {
junit '**/test-reports/*.xml' // 解析JUnit格式测试报告(需测试框架生成)
}
}
}
stage('Publish Report') {
steps {
publishHTML(target: [
allowMissing: false,
alwaysLinkToLastBuild: true,
keepAll: true,
reportDir: 'test-reports', // 测试报告目录(需与测试脚本输出一致)
reportFiles: 'index.html', // 报告文件名(如Selenium生成的HTML报告)
reportName: 'Test Report' // 报告展示名称
]) // 发布HTML格式详细报告(可选)
}
}
}
}
5. 编写测试脚本与构建脚本
- build.sh(项目构建脚本):根据项目类型编写构建命令,例如:
- Java项目(Maven):
mvn clean package; - Node.js项目:
npm install & & npm run build。
脚本需赋予执行权限:chmod +x build.sh。
- Java项目(Maven):
- run-tests.sh(测试执行脚本):根据测试类型编写执行命令,例如:
- JUnit测试(Java):
mvn test(会自动生成target/surefire-reports/*.xml报告); - Selenium测试(Python):
cd /path/to/selenium-project & & pytest --html=./result/report.html(生成HTML格式报告)。
脚本需赋予执行权限:chmod +x run-tests.sh。
- JUnit测试(Java):
6. 运行测试并查看结果
- 触发构建:回到Jenkins项目页面,点击“Build Now”手动触发构建;也可配置定时构建(如
H/5 * * * *表示每5分钟构建一次)或Git钩子(代码推送时自动构建)。 - 查看结果:
- 构建日志:点击构建编号进入详情页,查看实时日志确认测试执行过程;
- 测试报告:在构建详情页的“Test Result” section查看JUnit测试结果(通过率、失败用例等);若有HTML报告,点击“Test Report”查看详细测试截图、日志等信息。
常见问题解决
- 测试报告无法显示:若使用Selenium生成的HTML报告,需在Jenkins的“Manage Jenkins”→“Script Console”中执行以下命令,关闭Content Security Policy限制:
System.setProperty("hudson.model.DirectoryBrowserSupport.CSP", "") - 脚本权限问题:确保
build.sh和run-tests.sh具有执行权限(chmod +x *.sh),且Jenkins用户(默认jenkins)有权限访问脚本及依赖目录。
通过以上步骤,即可在Ubuntu环境下使用Jenkins实现测试脚本的自动化执行与管理,覆盖从代码拉取到报告发布的完整流程。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Ubuntu Jenkins如何测试脚本
本文地址: https://pptw.com/jishu/735807.html
