Skip to content

Refactor pipeline index page

Tiffany Rea requested to merge refactor-pipeline-index-page into master

What does this MR do and why?

Describe in detail what your merge request does and why.

Part 1 of team task https://gitlab.com/gitlab-org/quality/team-tasks/-/issues/1053 .

I noticed there was a small change in FE on pipelines page so I figured I should incorporate that into our existing tests. With the new change, Flow::Pipeline became a little cleaner. In this MR we changed:

  • Solidify all of the wait_for_latest_pipeline_<pipeline_condition> methods in Pipeline::Index into 1 method wait_for_latest_pipeline that takes in pipeline status as an argument.
  • No longer checking for pipeline status using css ci-status-icon, we have a pipeline status badge now pipeline_commit_status that we can grab the text from.
  • We often run into this transient failure #299497 (closed) where no pipeline shows up on pipelines page. I added an explicit 1 minute wait here, if pipeline still doesn't show up, that should signal something has gone wrong with either pipeline creation or this part of the UI fetching for pipelines.
  • The rest is just updating tests accordingly.

In Part 2 I'll introduce the same actions but making use of the API. That way, hopefully we can avoid UI flakiness and a lot less refactoring in the future if UI shall change again.

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 Tiffany Rea

Merge request reports

Loading