jest-sonar-reporter is a custom results processor for Jest. The processor converts Jest's output into Sonar's generic test data format.
This project is inspired by Michael Allen's jest-junit-reporter project.
Using npm:
$ npm i -D jest-sonar-reporter
Using yarn:
$ yarn add -D jest-sonar-reporter
Configure Jest in your package.json
to use jest-sonar-reporter
as a custom results processor.
{
"jest": {
"testResultsProcessor": "jest-sonar-reporter"
}
}
Configure Sonar to import the test results. Add the sonar.testExecutionReportPaths
property to your
sonar-project.properties
file.
sonar.testExecutionReportPaths=test-report.xml
To customize the reporter you can use package.json
to store the configuration.
Important: The
TEST_REPORT_PATH
environment variable is deprecated!
Create a jestSonar
entry like this:
{
"jestSonar": {}
}
You can customize the following options:
reportPath
This will specify the path to put the report in.reportFile
This will specify the file name of the report.indent
This will specify the indentation to format the report.
{
"jestSonar": {
"reportPath": "reports",
"reportFile": "test-reporter.xml",
"indent": 4
}
}
Important: Don't forget to update
sonar.testExecutionReportPaths
when you use a custom path and file name.
- Run Jest to execute your tests.
Using npm:
$ npm run test
Using yarn:
$ yarn run test
- Run sonar-scanner to import the test results.
$ sonar-scanner
This project uses the MIT licence.