【问题标题】:How to setup sonarqube for Angular 7 project如何为 Angular 7 项目设置 sonarqube
【发布时间】:2020-05-11 03:00:15
【问题描述】:

尝试为 Angular 7 代码库设置 Sonarqube 以进行代码覆盖率分析。 获得授权 cmd 后,我已经安装了 Sonarqube 并在 Admin 中创建了一个项目

"sonar-scanner.bat -D"sonar.projectKey=TestApp" -D"sonar.sources=." -D"sonar.host.url=http://127.0.0.1:9000" -D"sonar.login=5089f6d1cc070b3c9e96273405a7e354721030c7""

试图在 Angular 项目中运行... 它开始扫描项目,但失败了,我是否配置了任何其他来运行扫描

“以下是扫描仪控制台中显示的消息”

INFO: 1024/1024 source files have been analyzed
INFO: Sensor TypeScript analysis [javascript] (done) | time=200377ms
INFO: Sensor JavaXmlSensor [java]
INFO: Sensor JavaXmlSensor [java] (done) | time=256ms
INFO: Sensor HTML [web]
INFO: Sensor HTML [web] (done) | time=2605ms
INFO: Sensor SonarTS [typescript]
INFO: Since SonarTS v2.0, TypeScript analysis is performed by SonarJS analyzer v6.0 or later. No TypeScript analysis is performed by SonarTS.
INFO: Sensor SonarTS [typescript] (done) | time=20ms
INFO: ------------- Run sensors on project
INFO: Sensor Zero Coverage Sensor
INFO: Sensor Zero Coverage Sensor (done) | time=1038ms
INFO: SCM Publisher SCM provider for this project is: svn
INFO: SCM Publisher 2109 source files to be analyzed
INFO:
INFO:
INFO: SCM Publisher 0/2109 source files have been analyzed (done) | time=28586ms
INFO: ------------------------------------------------------------------------
INFO: EXECUTION FAILURE
INFO: ------------------------------------------------------------------------
INFO: Total time: 9:48.956s
INFO: Final Memory: 14M/60M
INFO: ------------------------------------------------------------------------
ERROR: Error during SonarQube Scanner execution
java.lang.IllegalStateException: Error when executing blame for file

【问题讨论】:

    标签: angular sonarqube sonarqube-scan


    【解决方案1】:

    第 1 步 - 安装 Sonarqube

    要安装 Sonarqube,首先从 https://www.sonarqube.org/downloads/. 下载 Sonarqube

    第 2 步 - 使用 Angular 配置声纳

    运行 - npm install sonar-scanner --save-dev

    在 Angular 根目录中创建一个名为 sonar-project.properties 的文件并添加以下属性

    sonar.host.url=http://localhost:9000
    sonar.login=admin
    sonar.password=admin
    sonar.projectKey=test-app
    sonar.projectName=test-app
    sonar.projectVersion=1.0
    sonar.sourceEncoding=UTF-8
    sonar.sources=src
    sonar.exclusions=**/node_modules/**
    sonar.tests=src
    sonar.test.inclusions=**/*.spec.ts
    sonar.typescript.lcov.reportPaths=coverage/lcov.info
    

    第 3 步 - 将 Karma 代码覆盖率与 Sonarqube 集成

    在你的 package.json 中添加一个名为 sonar 的脚本

    "scripts": {
        "sonar": "sonar-scanner"
    }
    

    最后,运行以下命令将 Karma 覆盖与 Sonar 服务器集成,

    npm run sonar
    

    您将通过导航到 http://localhost:9000/projects 直接在 Sonar 服务器上获得结果

    【讨论】:

    • 我使用的是 SonarQube 5.5,在尝试这种方法后,声纳扫描仪没有索引任何文件
    猜你喜欢
    • 1970-01-01
    • 2020-12-30
    • 1970-01-01
    • 2020-11-02
    • 2018-04-19
    • 2019-08-13
    • 2019-07-23
    • 2019-07-20
    • 1970-01-01
    相关资源
    最近更新 更多