标签:sonarjs sonarqube js test coverage path sonar jenkins config
Sonar Config
.Jenkinsfile config
stage('SonarQube analysis') { steps { script { scannerHome = tool 'SonarScanner4'; } withSonarQubeEnv('SonarQube') { sh "${scannerHome}/bin/sonar-scanner" } } }
sonar-project.properties
sonar.projectBaseDir=test-app // app dir sonar.projectName=test-app sonar.projectKey=test-app sonar.projectVersion=1.0 sonar.sourceEncoding=UTF-8 sonar.language=js sonar.sources=src sonar.tests=test sonar.exclusions=test/**,node_modules/**,build/**,**/less/**,**/config/**,**/config.js,**/imgs/** // files not to test sonar.test.inclusions=test/shared/*.js,test/components/**/*.js // files to test sonar.javascript.lcov.reportPaths=coverage/lcov.info //coverage path sonar.testExecutionReportPaths=coverage/test-report.xml //unit test path
package.json
"jestSonar": { "reportPath": "coverage", // same with path in sonar-project.properties file "reportFile": "test-report.xml", // same with path in sonar-project.properties file "sonar56x": true // to get coverage data for sonarQ 5.6.*
}
jest.config.js
module.exports = Object.assign(jestConfig, { coverageThreshold: { global: { branches: 95, functions: 95, lines: 95, statements: 95, }, }, testResultsProcessor: 'jest-sonar-reporter', });
.eslintrc
{ "parser": "babel-eslint", "extends": [ "plugin:sonarjs/recommended"], "plugins": ["sonarjs"], "rules": { "eol-last": ["error", "always"], "sonarjs/cognitive-complexity": ["error", 25], "sonarjs/no-duplicate-string": "off", "sonarjs/no-identical-functions": "off" } }
fiels:
标签:sonarjs,sonarqube,js,test,coverage,path,sonar,jenkins,config 来源: https://www.cnblogs.com/weilantiankong/p/11231750.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。