Generates an XML report that the SonarQube Generic Test Data parser can understand


Keywords
hacktoberfest, rspec, rspec-formatter, ruby, sonarqube, sonarqube-analysis
License
MIT
Install
gem install rspec-sonarqube-formatter -v 1.5.0

Documentation

RSpec SonarQube Formatter

RSpec 3 formatter that generates an XML file for SonarQube 6.2+, using the Generic Test Data format.

Gem Version Downloads GitHub issues Travis Quality Gate Status Coveralls Code Climate maintainability License

Features 🌈

This formatter generates an XML report that can be read by SonarQube 6.2+. Out of the box, SonarQube 6.2+ supports generic formats for test coverage and test execution import. Using the XML file generated by this gem, you get an overview of test executions (passed, skipped, failed) and the time in milliseconds it took to execute these.

Sonarcloud.io

Installation 🚀

Add the gem to your application's Gemfile:

# RSpec formatters
gem 'rspec-sonarqube-formatter', '~> 1.5', require: false

Then, update your bundle:

$ bundle install

Or install it manually using:

$ gem install rspec-sonarqube-formatter

Usage 🛠

Add the following code to your spec_helper.rb:

RSpec.configure do |c|
  c.formatter = 'documentation'
  c.add_formatter('RspecSonarqubeFormatter', 'out/test-report.xml')
  ...
end

Alternatively, edit your .rspec file to define your formatters there:

# .rspec
--require spec_helper
--color
--format RspecSonarqubeFormatter
--out out/test-report.xml
--format documentation

To make SonarQube read the test report, specify the path to the generated XML in your sonar-project.properties or configure it in the SonarQube GUI.

# sonar-project.properties
sonar.testExecutionReportPaths=out/test-report.xml

Inspiration 💅

The only existing formatter does not work out of the box and is not published to RubyGems.org, so I created my own.

Thank you to @witjoh for the original work ♥️!

Contributing 🚧

Bug reports and pull requests are welcome on GitHub at otherguy/rspec-sonarqube-formatter.

After checking out the repository, you need to install dependencies:

gem install bundler -v 2.2.0
bundle install

Then, run bundle exec rake spec to run the test suite.

To install this gem on your local machine, run bundle exec rake install.

Please check your contributions with RuboCop by running bundle exec rubocop.

Releases are built from tags automatically on Travis and pushed to RubyGems.org.