Speed up integration testing on the CI (taking around ~21 right now 09/23)
- Dominant language
- Dart
- Stars
- 1.7k
- Forks
- 404
- Avg merge
- 6d 17h
- Merged PRs (30d)
- 18
Description
example run that took 47 min: https://github.com/flutter/devtools/actions/runs/5336567626/jobs/9671473410?pr=5919
We should see if there is anything we can do to shard these or share steps that we are already doing for other jobs (e.g. code generation). Perhaps we could run the test in 3-4 different shards and make each shard its own job that can run concurrently. We may also consider sharing the step to start chrome driver and shut it down, as right now this is happening for each test, not once for running all tests. This is not that expensive though looking at the timing logs, but it could be a small win.
Contributor guide
Research direction
Start by reviewing the linked GitHub Actions run and the CI configuration for the integration-test job, including the existing code-generation steps and ChromeDriver setup. Compare the timing logs and determine whether concurrent shards or shared setup are practical; done means the integration tests complete faster without losing coverage or reliability.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- dart, github-actions
- Domain
- ci-cd, performance, testing-qa
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100