Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

ci_reporter

Package Overview
Dependencies
Maintainers
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

ci_reporter

  • 2.1.0
  • Rubygems
  • Socket score

Version published
Maintainers
2
Created
Source

CI::Reporter is an add-on to Ruby testing frameworks like Test::Unit or RSpec that allows you to generate XML reports of your test runs. The resulting files can be read by a continuous integration system that understands Ant's JUnit report XML format, thus allowing your CI system to track test/spec successes and failures.

Gem Version Build Status Code Climate

Usage

CI::Reporter works with projects that use standard Rake tasks for running tests. In this fashion, it hooks into testing frameworks using environment variables recognized by these custom tasks to inject the CI::Reporter code into the test run.

Each supported testing framework is provided by a separate gem:

Upgrading from CI::Reporter 1.x

CI::Reporter 1.x supported all the different test frameworks in a single gem. This was convenient, but caused issues as test frameworks released new, sometimes incompatibile, versions. CI::Reporter 2.x has been split into multiple gems, allowing each gem to specify the test framework versions it supports.

To upgrade to 2.x, remove ci_reporter from your Gemfile and replace it with one or more of the framework-specific gems above.

Jenkins setup

  1. Add the "Publish JUnit test result report" post-build step in the job configuration.

  2. Enter "test/reports/*.xml,spec/reports/*.xml" in the "Test report XMLs" field (adjust this to suit which tests you are running)

Report files are written, by default, to the test/reports, features/reports or spec/reports subdirectory of your project. If you wish to customize the location, simply set the environment variable CI_REPORTS (either in the environment, on the Rake command line, or in your Rakefile) to the location where they should go.

Conditional reporting

You may not wish to always produce report files. There are two primary ways to configure this:

With environment variables

Use an environment variable in your Rakefile to control if CI:Reporter will be invoked:

if ENV['GENERATE_REPORTS'] == 'true'
  require 'ci/reporter/rake/rspec'
  task :spec => 'ci:setup:rspec'
end

You can either inject this variable in your CI or simply call rake with the environment variable set:

GENERATE_REPORTS=true rake spec

With CI-specific Rake tasks

Instead of modifying your existing Rake tasks, create new ones:

namespace :ci do
  task :all => ['ci:setup:rspec', 'spec']
end

Then use this Rake target in CI:

rake ci:all

Environment Variables

  • CI_REPORTS: if set, points to a directory where report files will be written.
  • CI_CAPTURE: if set to value "off", stdout/stderr capture will be disabled.

FAQs

Package last updated on 09 Feb 2023

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc