Skip to content

Add test report widget using new framework

Scott Hampton requested to merge 338285-test-summary-high-level into master

What does this MR do and why?

This is a follow up MR after the original MR was reverted due to a FOSS pipeline error. This MR is the exact same as the original MR, but also includes the rspec fix for the FOSS pipeline error.


For #338285 (closed)

This MR recreates a basic versions of the test summary widget using the new merge request widget extensions framework.

This MR only implements levels 1 and 2 of the widget: the main widget body and the list of suites. The list of changed test results for each suite (level 3) will be added soon along with the Failed N times in the last 14 days badges, see #351258 (closed) for details.

Screenshots or screen recordings

description screenshot
loading Screen_Shot_2022-03-10_at_10.58.33
error Screen_Shot_2022-03-10_at_11.05.29
with changed test results Screen_Shot_2022-03-10_at_10.59.09
with no changed test results Screen_Shot_2022-03-10_at_10.59.40
with report parsing error Screen_Shot_2022-03-10_at_10.59.30

How to set up and validate locally

  1. git checkout 338285-test-summary-mr-report-widget
  2. echo "Feature.enable(:refactor_mr_widgets_extensions)" | rails c (this feature is behind this feature flag)
  3. set up test reports for a project (or clone this test project)
  4. run a pipeline for the default branch of the project that generates a test report
  5. open a merge request for a branch that changes test results
  6. navigate to the merge request, wait for the report parsing/comparison to finish, observe the test summary widget

note: the old widget will appear below the new widget, this is expected while we're implementing the new widgets Screen_Shot_2022-03-08_at_10.53.03

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Edited by Scott Hampton

Merge request reports