Improve test reports parsing timing (Concurrent parsing)
What does this MR do?
Today, we show compared test report results between base pipeline's test reports and head pipeline's test reports in the merge request widget. This process takes a long time if the project has so many JUnit test cases, for instance, this process takes for 10~15 sec on GitLab CE/EE projects. It's too slow thus annoying users at some points.
What I'm proposing here, is that parsing base pipeline's test reports and head pipeline's test reports concurrently. Currently, we're parsing those sequentially, but it doesn't need to be like that. We're going to use ReactiveCache for parsing asynchronously, and this allows us to show compared results much faster.
What are the relevant issue numbers?
Does this MR meet the acceptance criteria?
- Changelog entry added, if necessary
- Documentation created/updated
- Tests added for this feature/bug
- Conforms to the code review guidelines
- Conforms to the merge request performance guidelines
- Conforms to the style guides
- Conforms to the database guides
- Link to e2e tests MR added if this MR has ~"Requires e2 tests" label. See the Test Planning Process.