代碼分析體系及Sonarqube平臺
代碼分析
IDE輔助功能:xcode、android studio
獨立的靜態(tài)分析工具:findbugs、androidlint、scan-build、pmd、阿里巴巴java開發(fā)規(guī)范pmd插件
代碼審計關(guān)注的質(zhì)量指標
bug和漏洞
單元測試規(guī)模
覆蓋率分析
代碼靜態(tài)檢查
代碼語法分析:lint系列,通過分析語法樹和源代碼,檢查代碼規(guī)范
編譯器分析:借助于編譯器獲得代碼關(guān)系
字節(jié)碼靜態(tài)分析:分析jar、war、dex等格式的文件,代表工具:findbugs
sonarqube架構(gòu)

sonarqube部署
臨時性的部署
docker run -d --name sonarqube \
-p 9000:9000 -p 9092:9092 \
?sonarqube
正式部署,最新版本的sonarqube不再支持mysql了
docker run -d \? ?
?--name sonarqube_postgres \
?
??-e POSTGRES_USER=sonarqube \
?
??-e POSTGRES_PASSWORD=sonarqube \
??
?-e PGDATA=/var/lib/postgresql/data/pgdata \?
?? ?-v $PWD/postgresql:/var/lib/postgresql/data \
?
??postgres
mkdir sonarqube_data sonarqube_extensions sonarqube_logs
chown -R 999:999 sonarqube_data sonarqube_extensions sonarqube_logs
docker run -d ?--name sonarqube_hogwarts -p 9000:9000 -p 9092:9092 --link sonarqube_postgres:db \
?
? -e SONARQUBE_JDBC_USERNAME=sonarqube?
-e SONARQUBE_JDBC_PASSWORD=sonarqube \
?
??-e SONARQUBE_JDBC_URL="jdbc:postgresql://db/sonarqube" \?
??-v $PWD/sonarqube_data:/opt/sonarqube/data \
??
?-v $PWD/sonarqube_extensions:/opt/sonarqube/extensions \
?
??-v $PWD/sonarqube_logs:/opt/sonarqube/logs \
sonarqube
默認配置
用戶名密碼:admin admin
http://sonarqube.testing-studio.com/

sonarqube的代碼分析流程
想學(xué)好sonarqube平臺,就要先從sonarqube架構(gòu)開始學(xué)習(xí)。了解架構(gòu)后,在進行部署等操作。后面我們會繼續(xù)為大家介紹Sonqrqube scanner的使用等,敬請期待哦~