ubuntu

Ubuntu Jenkins怎样生成报告

小樊
37
2025-07-21 17:06:06
栏目: 智能运维

在Ubuntu上使用Jenkins生成报告可以通过以下几种方法实现:

使用HTML Publisher插件

  1. 安装HTML Publisher插件

    • 登录Jenkins,点击“系统管理”→“插件管理”。
    • 在“可选插件”选项卡中搜索“HTML Publisher Plugin”,直接安装即可。若无法直接安装,可下载插件(插件下载地址:HTML Publisher Plugin),切换到“高级”选项卡上传并重启Jenkins。
  2. 配置Job以生成HTML测试报告

    • 创建或选择Job:进入Jenkins项目页面,选择或新建一个Job(如自由风格项目)。
    • 配置源码管理:根据需求配置源码管理工具(如Git),指定仓库URL和分支。
    • 在“构建”部分添加构建步骤,例如使用Maven或Gradle运行测试命令:
      • Maven项目:mvn clean test
      • Gradle项目:gradle clean test
    • 也可直接运行生成HTML报告的脚本,如使用pytest生成报告:pytest --html=report/result.html --self-contained-html
    • 在“构建后操作”部分,选择“Publish HTML reports”。
    • 填写以下信息:
      • HTML directory to archive:指定测试报告的路径(相对于工作空间)。例如,若报告生成在report文件夹下,则填写report
      • Index page[s]:指定报告的入口文件名。例如,若报告文件为result.html,则填写result.html
      • Report title:设置报告在Jenkins页面上显示的标题。
  3. 解决HTML报告样式加载问题

    • Jenkins默认的内容安全策略(CSP)可能导致HTML报告中的CSS样式无法加载,报告显示异常。可通过以下方法解决:
      • 临时解决方案(重启后失效):
        • 进入“系统管理”→“脚本命令行”,输入以下命令并运行:
          System.setProperty("hudson.model.DirectoryBrowserSupport.CSP", "")
          
      • 永久解决方案
        • 安装Groovy插件:在插件管理中搜索并安装“Groovy Plugin”。
        • 在Job配置页面的“构建触发器”部分,勾选“Build when job nodes start”。
        • 在“构建”部分,添加“Execute system Groovy script”步骤,输入以下Groovy命令:
          import jenkins.model.Jenkins
          Jenkins.instance.getAllItems(AbstractItem.class).each { item ->
              if (item instanceof hudson.model.Job) {
                  item.getBuilds().each { build ->
                      build.getResults().each { result ->
                          if (result instanceof hudson.tasks.junit.JUnitResultArchiver) {
                              result.getReportDir().each { dir ->
                                  def reportDir = dir.path
                                  def reportFiles = dir.listFiles { file ->
                                      file.name.endsWith('.html')
                                  }.collect { file ->
                                      [
                                          allowMissing: false,
                                          alwaysLinkToLastBuild: true,
                                          keepAll: true,
                                          reportDir: reportDir,
                                          reportFiles: file.name,
                                          reportName: 'HTML Report'
                                      ]
                                  }.each { config ->
                                      build.post.publishHTML(config)
                                  }
                              }
                          }
                      }
                  }
              }
          }
          
        • 保存配置后,重新构建Job即可。
  4. 执行构建并查看报告

    • 触发构建:点击“立即构建”按钮,执行Job。
    • 构建完成后,在Job页面左侧导航栏中会出现“HTML Report”选项。
    • 点击“HTML Report”,即可查看生成的HTML测试报告。

通过以上步骤,你可以在Ubuntu上使用Jenkins生成和查看HTML测试报告。根据你的具体需求,可以进一步调整和扩展配置。

0
看了该问题的人还看了