An open API service indexing awesome lists of open source software.

https://github.com/mageddo/mocha-sonar-generic-test-coverage


https://github.com/mageddo/mocha-sonar-generic-test-coverage

Last synced: 10 months ago
JSON representation

Awesome Lists containing this project

README

          

# Introduction
This is a mocha reporter project to integrate mocha unit tests to [sonar Generic Test coverage unit tests execution results](http://docs.sonarqube.org/display/PLUG/Generic+Test+Coverage#GenericTestCoverage-UnitTestsExecutionResultsReportFormat)

This reporter is only for unit test sucess/failures verification, to unit test line coverage take a look on [istanbul reporter](https://www.npmjs.com/package/grunt-istanbul)

# Installation

npm install mocha-sonar-generic-test-coverage --save-dev

On pure mocha

mocha --reporter mocha-sonar-generic-test-coverage testFolder

On **mocha-test** for use with grunt

```javascript
mochaTest: {
coverage: {
options: {
reporter: 'mocha-sonar-generic-test-coverage',
quiet: false,
captureFile: null, // default mocha test capture file variable
reporterOptions: {
outputFile: null, // relative path file to capture instead append to captureFile (this file will not get prints at stdout)
useFileFullPath: false // generate report for the files using fullpath
}
}
},
src: [
'test.js'
]
}
}
```

# Testing

$ npm install && npm test

# Report demo sample

$ npm install && \
cd demo && \
npm install && \
npm start

Running "mochaTest:test" (mochaTest) task
Warning: Task "mochaTest:test" failed. Used --force, continuing.
Done, but with warnings.

There is one test with error intencionally for metrics at sonar

Running sonarscanner

$ docker run -p9000:9000 --name sonarqube -v $PWD:/app defreitas/sonarqube:6.3.1-alpine

Reporting to sonarqube

$ docker exec -it sonarqube sh -c 'cd /app && sonar-scanner'

Then [open your browser](http://127.0.0.1:9000/component_measures/metric/tests/list?id=mocha-sonar-generic-test-coverage-demo) and see the test report results

# Output example

```xml





long stacktrace


long stacktrace


long stacktrace

```

Sonar preview

![](http://i.imgur.com/mlxAPI1.jpg)
![](http://i.imgur.com/n9eCbt7.jpg)
![](http://i.imgur.com/Bfw0amn.jpg)

# Release Notes
* `0.0.6` backing mstc support
* `0.0.4` `mstc` variable was migrated to `reporterOptions`, anyway `mstc` it's supported yet