SonarQube

SonarQube

https://www.sonarqube.org/

Open Source的程式碼分析工具

可分析多25種以上的程式語言,如java,php,python,c#,...



支援以下幾種標準

• CWE (Common Weakness Enumeration)

• OWASP TOP TEN (Open Web Application Security Project)

• SANS TOP 25



使用以下7個維度分析程式碼品質:

  • Architecture & Design(程式架構)

  • Duplications(冗餘程式)

  • Unit tests(單元測試)

  • Complexity(複雜度)

  • Potential bugs(潛在問題)

  • Coding rules(寫作原則)

  • Comments(註解)



refer

http://blog.jason.tools/2017/05/sonarqube-use-experience.html

https://poychang.github.io/sonarqube-csharp/

https://tpu.thinkpower.com.tw/tpu/articleDetails/563



………………………………………......................................................................................................

使用方式


1

環境確認

確認有jdk11或jre11


2

下載sonarqube解壓縮後執行啟動指令

ex:

Windows平台   

C:sonarqubebinwindows-x86-xxStartSonar.bat

ex:

其他作業系統平台, 以non-root user執行以下 

/opt/sonarqube/bin/[OS]/sonar.sh console


3

瀏覽器開啟 網址為 http://localhost:9000

帳密分別是admin/admin



4

在server端(http://localhost:9000):

1.根據網頁導覽,建立專案 

2.新增key(類似專案id) 

3.產生token

4.選擇要分析的程式語言 

5.根據指示下載該程式語言的scanner

6.導覽會顯示在程式碼所在端要執行的指令和參數

在程式碼所在端:

進入到欲檢查的程式碼目錄後執行server端要求的指令和參數

參數會包含key,token,server位置,程式碼位置,等

ex:

在程式碼所在端:

下載並解壓縮sonar-scanner-cli-4.0.0.1744-windows.zip到c:

scanner位置應該在c:sonar-scanner-4.0.0.1744-windowsbinsonar-scanner.bat 

假設程式碼目錄在 c:sourcecodesystwnet

啟用cmd並進入console

c:> cd c:sourcecodesystwnet

執行分析程式

c:sourcecodesystwnet > c:sonar-scanner-4.0.0.1744-windowsbinsonar-scanner.bat -D"sonar.projectKey=systwnet" -D"sonar.sources=." -D"sonar.host.url=http://localhost:9000" -D"sonar.login=766775b0a1b2c69b2306e6dbab8a601b00c15f86" 



5 完成分析

經過一段時間分析後,結果會顯示在server端上

 

 

 


2019-10-20 15:52:10發表 2019-10-20 15:54:17修改   


  登入      [牛的大腦] | [單字我朋友] Powered by systw.net