在Ubuntu系统上,首先需要安装Jenkins及必要的依赖工具:
sudo apt update && sudo apt install -y openjdk-11-jdk
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
sudo systemctl start jenkins && sudo systemctl enable jenkins
http://<服务器IP>:8080,使用初始管理员密码(通过cat /var/lib/jenkins/secrets/initialAdminPassword获取)登录。MyTestProject),选择“Pipeline”类型,点击“OK”。https://github.com/your-repo/your-project.git),并配置访问凭证(若仓库为私有)。Jenkinsfile文件名(Jenkins会自动从仓库拉取该文件)。在项目根目录创建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格式详细报告(可选)
}
}
}
}
mvn clean package;npm install && npm run build。chmod +x build.sh。mvn test(会自动生成target/surefire-reports/*.xml报告);cd /path/to/selenium-project && pytest --html=./result/report.html(生成HTML格式报告)。chmod +x run-tests.sh。H/5 * * * *表示每5分钟构建一次)或Git钩子(代码推送时自动构建)。System.setProperty("hudson.model.DirectoryBrowserSupport.CSP", "")
build.sh和run-tests.sh具有执行权限(chmod +x *.sh),且Jenkins用户(默认jenkins)有权限访问脚本及依赖目录。通过以上步骤,即可在Ubuntu环境下使用Jenkins实现测试脚本的自动化执行与管理,覆盖从代码拉取到报告发布的完整流程。