在前面的文章中介绍了如何使用SonarQube结合Karma与Jasmine进行前端单元测试并显示测试覆盖率,这篇文章介绍一下如何指定扫描目录和除外文件。
事前准备
SonarQube环境搭建
可以使用SonarQube的各个版本进行验证,此处使用SonarQube LTS 7.9.1版本 + Postgresql 12版本。详细环境搭建可以参看:
Angular应用+Karma+Jasmine
单元测试覆盖率的获取,事前必须需要首先执行单元测试,然后SonarQube实际上会分析此结果才能进行覆盖率的展示。而这个过程中则需要多种工具包括Karma和Jasmine等,而由于Angular CLI创建的应用框架中已经默认几乎配置完毕,而且包含示例的测试文件,所以只需要如下步骤即可:
- 步骤1: ng new demo --style=less
- 步骤2: cd demo && npm install
- 步骤3: 设定karma的配置文件
- 步骤4: ng test --code-coverage
详细的说明和解释可以参看如下内容:
Sonar-Scanner
liumiaocn:~ liumiao$ sonar-scanner --version
INFO: Scanner configuration file: /usr/local/share/sonar/sonar-scanner-3.2.0.1227-linux/conf/sonar-scanner.properties
INFO: Project root configuration file: NONE
INFO: SonarQube Scanner 3.2.0.1227
INFO: Java 1.8.0_191 Oracl