1.4.0 • Published 3 years ago

karma-sonarqube-reporter v1.4.0

Weekly downloads
6,406
License
MIT
Repository
github
Last release
3 years ago

karma-sonarqube-reporter

npm version Build Status Coverage Status Quality Gate All Contributors

Karma reporter plugin for generating SonarQube generic test reports.

Requirements

Node.js >= 8.10.0

Installation

npm install karma-sonarqube-reporter --save-dev

Configuration

Adjust your karma.conf.js file:

Create a new plugin entry

plugins: [
  require('karma-sonarqube-reporter')
]

Add configuration parameters

// Default configuration
sonarqubeReporter: {
  basePath: 'src/app',        // test files folder
  filePattern: '**/*spec.ts', // test files glob pattern
  encoding: 'utf-8',          // test files encoding
  outputFolder: 'reports',    // report destination
  legacyMode: false,          // report for Sonarqube < 6.2 (disabled)
  reportName: (metadata) => { // report name callback, but accepts also a 
                              // string (file name) to generate a single file
    /**
     * Report metadata array:
     * - metadata[0] = browser name
     * - metadata[1] = browser version
     * - metadata[2] = plataform name
     * - metadata[3] = plataform version
     */
     return metadata.concat('xml').join('.');
  }
}

Activate sonarqube reporter

reporters: ['sonarqube']

Click here to see a full example.

Running

If your project uses Angular CLI run ng test and check the output folder.

$ ls reports
chrome.65.0.3325.linux.0.0.0.xml
firefox.54.0.0.linux.0.0.0.xml

The current report files' schema is defined on the SonarQube Generic Test Data page.

Add to your sonar-project.properties one of the following properties:

Legacy ModeProperty
falsesonar.testExecutionReportPaths
truesonar.genericcoverage.unitTestReportPaths

Note report paths should be passed in a comma-delimited.

Finally, start SonarQube Scanner on your project folder.

Contributions are welcome!

That's all!

Contributors ✨

Thanks goes to these wonderful people (emoji key):

This project follows the all-contributors specification. Contributions of any kind welcome!

1.4.0

3 years ago

1.3.2

4 years ago

1.3.1

4 years ago

1.3.0

4 years ago

1.2.5

5 years ago

1.2.4

5 years ago

1.2.3

6 years ago

1.2.2

6 years ago

1.2.1

6 years ago

1.2.0

6 years ago

1.1.1

6 years ago

1.1.0

6 years ago

1.0.4

6 years ago

1.0.3

6 years ago

1.0.2

6 years ago

1.0.1

6 years ago

1.0.0

6 years ago