在构建测试自动化脚本结束后控制台默认只输出用例执行结果,以接口测试自动化为例若脚本放在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页面即可正常显示
2. 不过这只是暂时解决,jenkins重启之后配置会消失,还是只能看到无样式页面。为了解决这个问题,需要加入Startup Trigger和Groovy插件
安装Startup Trigger(jenkins节点启动时触发构建)
安装Groovy(运行Groovy代码)
3. 新建一个Job,用于jenkins启动时执行配置命令
构造触发器中选择“Build when job nodes start”,其他不要填写
在构建模块选择“Execute system Groovy script”,然后维护如下代码:
System.setProperty("hudson.model.DirectoryBrowserSupport.CSP","")
4. 保存后重启jenkins,再次查看报告,jenkins展示个漂漂亮亮的HTML报告了