Jenkins构建后展示HTML测试报告

Jenkins构建后展示HTML测试报告
在构建测试自动化脚本结束后控制台默认只输出用例执行结果,以接口测试自动化为例若脚本放在Linux系统下执行,当执行完毕后要想直接查看测试报告是不方便的,所以想直观的看到构建完成后的报告可以在Jenkins展示
在这里插入图片描述

安装HTML Publisher plugin插件
安装方法1:

进入系统管理–管理插件–可选插件,搜索到此插件并安装:

安装方法2:

导入离线包,进入系统管理–>插件管理–>高级–>上传插件

插件下载,下载后是hpi格式

使用插件展示报告

编辑之前的项目,在“构建后操作”加入Publish HTML reports

HTML directory to archive :你的脚本输出报告保存的路径,最好填绝对路径

Index page[s] :原本报告的名称,测试报告为固定名称
在这里插入图片描述

配置保存后重新构建,项目中找到测试报告入口可看到html报告,如果展示为空请确认配置时的报告路径和名称
在这里插入图片描述

HTML报告样式无法显示
问题:

Jenkins中在访问有自定义样式或动画效果的测试报告时,展示的样式往往会出乎你的想象,面目全非,样式错乱,动画无法展示等等问题。打开浏览器开发工具控制台,可以看到CSS、JS加载失败.

原因:

Jenkins为了避免受到恶意HTML/JS文件的攻击, 会默认将安全策略CSP设置为:sandbox; default-src ‘none’; img-src ‘self’; style-src ‘self’; 在此配置下,只允许加载:

Jenkins服务器上托管的CSS文件

Jenkins服务器上托管的图片文件

以下形式的内容都会被禁止:

JavaScript

plugins (object/embed)

HTML中的内联样式表(Inline style sheets),以及引用的外站CSS文件

HTML中的内联图片(Inline image definitions),以及外站引用的图片文件

frames

web fonts

XHR/AJAX

解决:

  1. 修改CSP(Content Security Policy)的默认配置,到Jenkins系统管理->脚本命令行,执行以下Groovy命令,然后点击运行

System.setProperty(“hudson.model.DirectoryBrowserSupport.CSP”, “”)
配置完成后,重新构建原有项目,HTML页面即可正常显示

配置完成后,重新构建原有项目,HTML页面即可正常显示

  1. 不过这只是暂时解决,jenkins重启之后配置会消失,还是只能看到无样式页面。为了解决这个问题,需要加入Startup Trigger和Groovy插件

安装Startup Trigger(jenkins节点启动时触发构建)
在这里插入图片描述

安装Groovy(运行Groovy代码)
在这里插入图片描述

  1. 新建一个Job,用于jenkins启动时执行配置命令

构造触发器中选择“Build when job nodes start”,其他不要填写

在这里插入图片描述

在构建模块选择“Execute system Groovy script”,然后维护如下代码:

System.setProperty(“hudson.model.DirectoryBrowserSupport.CSP”,"")
在这里插入图片描述

  1. 保存后重新构建,既克展示漂漂亮亮的HTML报告

在这里插入图片描述

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值