首页主机资讯centos jenkins如何测试项目

centos jenkins如何测试项目

时间2025-11-04 16:29:04发布访客分类主机资讯浏览237
导读:1. 准备CentOS环境 在开始前,确保CentOS系统已更新并安装基础工具: sudo yum update -y sudo yum install -y wget git java-1.8.0-openjdk-devel 2. 安装...

1. 准备CentOS环境
在开始前,确保CentOS系统已更新并安装基础工具:

sudo yum update -y
sudo yum install -y wget git java-1.8.0-openjdk-devel

2. 安装Jenkins
通过yum仓库安装Jenkins,启动服务并设置开机自启:

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 -y jenkins
sudo systemctl start jenkins
sudo systemctl enable jenkins

访问http://< 服务器IP> :8080,按提示完成初始配置(解锁密码可在/var/lib/jenkins/secrets/initialAdminPassword中查看)。

3. 安装必要插件
进入Jenkins管理界面(Manage JenkinsManage Plugins),安装以下插件:

  • Git Plugin:用于拉取代码仓库(如GitHub、GitLab)。
  • Maven Integration Plugin(Java项目)或Python Plugin(Python项目):支持对应语言的构建与测试。
  • JUnit Plugin:用于发布单元测试报告。
  • HTML Publisher Plugin:发布HTML格式的测试报告(如Selenium测试结果)。

4. 配置测试环境依赖
根据项目类型安装依赖工具:

  • Java项目:确保JDK已安装(java -version验证),并配置Maven(mvn -v验证):
    sudo yum install -y maven
    
  • Python项目:安装Python及pip(python3 -Vpip3 -V验证),并安装项目依赖:
    sudo yum install -y python3 python3-pip
    pip3 install -r requirements.txt  # 在项目根目录执行
    
  • Docker测试:若需测试容器化应用,安装Docker及Docker插件:
    sudo yum install -y docker
    sudo systemctl start docker
    sudo systemctl enable docker
    

5. 创建Jenkins Job
选择New Item,输入任务名称(如MyProject-Test),选择任务类型(推荐PipelineFreestyle Project):

  • Freestyle Project(适合简单项目)

    • Source Code Management:选择Git,输入仓库URL(如https://github.com/your-repo/project.git)及凭证(若有私有仓库)。
    • Build Triggers:可选Build when a change is pushed to GitHub(代码推送时自动触发)。
    • Build Steps:根据项目类型添加命令:
      • Java(Maven):Invoke top-level Maven targets → Goals填写clean test
      • Python:Execute shell → 命令填写python3 -m unittest discover
    • Post-build Actions:添加Publish JUnit test result report,路径填写测试报告路径(如Java的target/surefire-reports/*.xml、Python的test-reports/*.xml)。
  • Pipeline(适合复杂项目,推荐)

    • 选择Pipeline script from SCM,SCM选Git,输入仓库URL,脚本路径填写Jenkinsfile(项目根目录需存在该文件)。
    • 示例Jenkinsfile(Java+Maven):
      pipeline {
      
          agent any
          stages {
      
              stage('Checkout') {
      
                  steps {
       git 'https://github.com/your-repo/project.git' }
      
              }
      
              stage('Build') {
      
                  steps {
       sh 'mvn clean package' }
      
              }
      
              stage('Test') {
      
                  steps {
       sh 'mvn test' }
      
                  post {
      
                      always {
       junit 'target/surefire-reports/*.xml' }
       // 发布测试报告
                  }
      
              }
      
          }
      
      }
      
      
    • 示例Jenkinsfile(Python+unittest):
      pipeline {
      
          agent any
          stages {
      
              stage('Checkout') {
      
                  steps {
       git 'https://github.com/your-repo/project.git' }
      
              }
      
              stage('Install Dependencies') {
      
                  steps {
       sh 'pip3 install -r requirements.txt' }
      
              }
      
              stage('Run Tests') {
      
                  steps {
       sh 'python3 -m unittest discover -s tests/' }
       // 假设测试文件在tests目录
              }
      
          }
      
          post {
      
              always {
       publishHTML(target: [reportDir: 'reports', reportFiles: 'test-report.html', reportName: 'Test Report']) }
       // 发布HTML报告
          }
      
      }
          
      

6. 执行测试并查看结果

  • 保存Job配置,点击Build Now手动触发测试。
  • 构建完成后,点击Build #< 编号> Test Result查看JUnit测试报告(显示通过/失败用例数);若配置了HTML报告,点击Test Report查看详细结果。
  • 查看控制台输出(Console Output)可获取测试过程的详细日志(如错误堆栈、测试耗时)。

7. 优化与扩展(可选)

  • 自动化触发:在Build Triggers中配置Git Webhook(如GitHub的SettingsWebhooks),实现代码推送时自动触发测试。
  • Docker集成:在Pipeline中添加Docker步骤,测试容器化应用(如构建镜像、运行容器并执行测试):
    stage('Docker Test') {
    
        steps {
    
            script {
    
                docker.build("myproject:${
    env.BUILD_ID}
    ").inside {
    
                    sh 'python3 -m unittest discover'
                }
    
            }
    
        }
    
    }
        
    
  • 并行测试:在Pipeline中使用parallel指令并行执行多个测试任务(如单元测试、集成测试),提升测试效率。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: centos jenkins如何测试项目
本文地址: https://pptw.com/jishu/742015.html
centos镜像如何卸载系统 centos jenkins如何监控项目

游客 回复需填写必要信息