最近在做基於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