【代码审计】使用SonarQube进行代码质量分析管理
2019獨角獸企業重金招聘Python工程師標準>>>
??????? 在之前的開發中,代碼的工作量化和質量化都是一個問題,隨著近幾年互聯網行業的快速發展,代碼已經可以來工作量化和質量化,今天我們來說說代碼的質量化。代碼的質量不是一個小問題,代碼的質量問題可能會導致整個軟件項目的失敗,甚至更嚴重的問題,因此在日常的代碼開發過程中加強代碼審計工作(PM)是必要的,同時開發人員自己也應該注重代碼質量。目前行業內對代碼質量化分析工具有阿里巴巴的p3c、Sonar質量分析工具等,本文我們主要來研究下Sonar這個相比功能比較強大的質量分析工具。
一、SonarQube簡介
??????? SonarQube 是一個代碼質量管理的開放平臺。通過插件機制,SonarQube 可以集成不同的測試工具,代碼分析工具,以及持續集成工具。與持續集成工具(例如JenKins、Hudson等)不同,SonarQube 并不是簡單地把不同的代碼檢查工具結果(例如 FindBugs、PMD等)直接顯示在 Web 頁面上,而是通過不同的插件對這些結果進行再加工處理,通過量化的方式度量代碼質量的變化,從而可以方便地對不同規模和種類的工程進行代碼質量管理。?
??????? 在對其他工具的支持方面,SonarQube 不僅提供了對IDE的支持,可以在Eclipse和IntellijIdea?這些工具里聯機查看結果;同時 SonarQube 還對大量的持續集成工具提供了接口支持,可以很方便地在持續集成中使用 SonarQube 。?此外,SonarQube 的插件還可以對Java以外的JavaScript、Xml、C#等其他編程語言提供支持,對國際化以及報告文檔化也有良好的支持。
二、準備工作
1.代碼分析管理平臺SonarQube安裝包(本文7.1)
sonarqube-7.1.zip
下載地址:https://www.sonarqube.org/downloads/
2.代碼分析掃描工具Scanner安裝包(本文2.5)
sonar-scanner-2.5.zip
下載地址:https://sonarsource.bintray.com/Distribution/sonar-scanner-cli/
3.JDK(本文1.8)
4.mysql數據庫(本文5.5.56)
三、部署過程
1.解壓代碼分析管理平臺SonarQube安裝包sonarqube-7.1.zip
2.解壓代碼分析掃描工具Scanner安裝包sonar-scanner-2.5.zip
3.配置環境變量
終端輸入vi /etc/profile編輯環境變量
終端輸入source /etc/profile使環境變量生效
4.編寫啟動腳本
?
5.啟動SonarQube
在終端執行我們剛編寫的啟動腳本
此刻,SonarQube已經啟動成功,我們訪問http://127.0.0.1:9000
然后我們登陸SonarQube代碼質量分析系統,用戶名/密碼 ? 默認admin/admin
備注,里面的兩個項目是我之前分析過的
6.配置SonarScanner項目掃描工具
我們首先編寫一個sonar-project.properties的配置文件
?
然后將改配置文件放到被分析檢查項目的目錄下
注意:如果項目處于版本控制中,會連接版本控制工具去檢查,如果連接不通會報錯誤,這里我們直接刪除和svn的關聯,然后進行代碼檢查
7.運行SonarScanner代碼掃描工具
進入我們要掃描的項目的更目錄下面,運行終端執行sonar-scanner
等待項目被掃描分析完成
掃描分析完成我們登陸SonarQube代碼分析管理平臺查看被分析的項目:
我們點進去看下改項目代碼分析的詳情
四、總結
??????? 本文主要說了下代碼質量分析工具SonarQube,該工具可以分析出項目的代碼質量,目前我們已經成功的部署了SonarQube代碼分析管理平臺,并且運行SonarScanner代碼掃描工具掃描分析了項目的代碼質量,下篇文章我們將介紹使用SonarQube代碼分析管理平臺怎么去監控項目代碼質量、分析項目質量、解決項目中的質量問題等,本文中還有一個問題,就是SonarQube默認使用的內嵌數據庫,對于測試來說是夠用了,但是正式使用會有一些限制,下文中我們將介紹SonarQube如何使用外置的mysql數據庫。
轉載于:https://my.oschina.net/zss1993/blog/1816554
總結
以上是生活随笔為你收集整理的【代码审计】使用SonarQube进行代码质量分析管理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: nginx配置技巧汇总
- 下一篇: 【资源共享】休眠唤醒 开发指南