Project

General

Profile

Actions

Feature #44345

open

Use SimpleCov's built-in HTML formatter instead of Redmine's own formatter

Added by Go MAEDA 1 day ago.

Status:
New
Priority:
Normal
Assignee:
-
Category:
Code cleanup/refactoring
Resolution:

Description

Redmine uses SimpleCov to measure test coverage. Running bin/rails test:coverage runs the test suite with coverage enabled and generates an HTML report in the coverage directory.

The report is currently generated by Redmine's own formatter, consisting of source:trunk/test/coverage/html_formatter.rb@24890 and two ERB templates (source:trunk/test/coverage/views@24890). I propose replacing it with SimpleCov's built-in HTML formatter.

Before (Redmine's custom formatter):

After (SimpleCov's built-in formatter):

Benefits:
  • We no longer have to maintain the custom formatter.
  • The report can be filtered by file name and coverage rate, and sorted by any column. The current report is a single flat table.
  • The SimpleCov CLI becomes usable. bundle exec simplecov open, report, and uncovered read coverage/coverage.json, which the custom formatter does not generate.
  • Files are grouped into tabs (Controllers, Models, Helpers, Libraries, ...) instead of being listed in a single table.
  • Branch and method coverage can be displayed if enabled later. The current templates support only line coverage.

The Redmine-specific links in the report header are dropped: the revision used to generate the report and the Continuous_integration wiki page. These were intended for reports published at https://www.redmine.org/builds/, which is no longer in operation.


Files

No data to display

Actions

Also available in: Atom PDF