最近在做基于jenkins ant junit 的测试持续集成,单独ant junit生成的junitreport报告打开正常,使用Jenkins的HTML Publisher Plugin 插件无法正常展示报告内容,仅有三个frame占位框,如下图所示
这是由于jenkins一些安全设置导致的展示不全问题,点击F12,可以看到如下报错
解决办法
方法一:登陆jenkins系统,点击"系统管理"----"脚本命令行",执行如下命令,重新刷新JunitReport日志页面即可看到全部内容
System.setProperty("hudson.model.DirectoryBrowserSupport.CSP", "sandbox; default-src 'self' 'unsafe-inline' 'style-src';")
方法二:
方法一只是临时修改,如果想重启后仍然有效,可以在启动时指定启动参数
java -Dhudson.model.DirectoryBrowserSupport.CSP= -jar jenkins.war
上面时直接通过war包启动,如果jenkins时通过tomcat容器来启动的时候,可以通过设置参数来执行,vi /etc/profile
增加一行 export JAVA_OPTS="-Dhudson.model.DirectoryBrowserSupport.CSP=\"sandbox; default-src 'self';\""
更新
日期:2017.3.26
---start---
最近开始同时使用ant报告和maven生产的报告,发现之前的设置无法保证maven报告可以展开详细的报错,修改如下即可,去掉所有的限制条件
System.setProperty("hudson.model.DirectoryBrowserSupport.CSP", "");
经过测试 Firefox、chrome、safari都可以正常浏览ant报告和maven报告
---end---
参考资料
https://wiki.jenkins-ci.org/display/JENKINS/HTML+Publisher+Plugin
https://wiki.jenkins-ci.org/display/JENKINS/Configuring+Content+Security+Policy