首页 文章

如何将茉莉花报告导入sonarqube进行分析

提问于
浏览
0

我们正在使用SonarQube版本5.2并且它与jenkins一起设置以报告SonarQube服务器上的代码覆盖率,目前只有sonarQube上的java代码覆盖,现在我们的目标是如果项目未通过质量门而失败jenkins构建是否可以将jasmine测试用于javascript与SonarQube集成,以及如何实现它

1 回答

  • 0

    要使构建成功取决于质量测量,您可以在茉莉花业力测试中添加阈值 .

    • 在你的karma.conf.js中你可以添加:
    coverageIstanbulReporter: {
      reports: [ 'html', 'lcovonly', 'text-summary', 'cobertura' ],
      fixWebpackSourcePaths: true,
      thresholds: {
        statements: 100,
        lines: 100,
        branches: 100,
        functions: 100
      }
    },
    

    如果覆盖率小于 100% ,这会使 ng test --watch=false --code-coverage 失败,您当然可以根据团队需要更改阈值 .

    • 可以使用 ng lint 使用 ng lint 检查代码样式

    • 通过将 sonar-project.properties 添加到根文件夹,使SonarQube检查您的源代码

    sonar.projectKey=YOUR_PROJECT_KEY
    sonar.projectName=YOUR_PROJECT_NAME
    sonar.projectVersion=YOUR_VERSION
    
    sonar.sources=src
    sonar.exclusions=**/node_modules/**
    sonar.tests=src/app
    sonar.test.inclusions=**/*.spec.ts
    sonar.sourceEncoding=UTF-8
    sonar.ts.tslintconfigpath=tslint.json
    sonar.typescript.lcov.reportPaths=coverage/lcov.info
    

    在CI配置中,您需要确保执行 ng test --code-coveragetslint 并且需要激活SonarQube .

    快乐的编码

相关问题