###### tags: `III DevOps`, `客戶服務`, `常見問題` # Sonarqube 測試運用 ## Coverage (若僅需要白箱檢測,則此設定請忽略) ### 1. 更新 Pipeline SonarQube 版本 ![](https://i.imgur.com/Nycltzl.png) ### 2. SonarScan * 請先確認SonarScan檔案是否已存在: ![](https://i.imgur.com/C1XyN2x.png) * SonarScan 其內容應至少為(以 vuejs 為例): ![](https://i.imgur.com/3OI9xu4.png) * SonarScan腳本文字內容摘要如下: ``` config=" sonar.sourceEncoding=UTF-8 sonar.sources=/usr/src/app sonar.tests=/usr/src/app sonar.exclusions=**/node_modules/**, **/coverage/** sonar.test.inclusions=**/*.spec.js # sonar.coverage.exclusions=**/*.test.* sonar.javascript.lcov.reportPaths=/usr/src/app/coverage/lcov.info sonar.testExecutionReportPaths=/usr/src/app/coverage/reports/test-reporter.xml" echo "$config" >> /usr/src/sonar-project.properties if [ $? -gt 0 ]; then echo 'Sonarqube plugin is disabled.' exit 0 fi; cat /usr/src/sonar-project.properties; cd app; npm install; npm run test:unit; cd ..; /usr/bin/entrypoint.sh sonar-scanner; ``` ### 3. 待Pipeline自動執行完畢,應可看到: ![](https://i.imgur.com/sNX176A.png) ## 測試黑白名單(待新增)