Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: improve performance combining coverage on large codebases #753

Conversation

koenvangeert
Copy link
Contributor

Remove the constant reading and writing of the coverage object to disk for each test.

Keep it in memory and then write it once after each suite to get the correct report out.
We can optimise further by only writing to disk after all suites are done but the performance gains for this are a lot less.

Some measurements from the codebase I'm testing this on.

Before the change:
combineCoverage: 855.495ms

After:
combineCoverage: 295.321ms

@CLAassistant
Copy link

CLAassistant commented Dec 7, 2023

CLA assistant check
All committers have signed the CLA.

@cypress-app-bot
Copy link

@koenvangeert koenvangeert force-pushed the koenvg/combineCoverage-performance branch from 8784890 to 2cb325c Compare December 7, 2023 16:35
@jennifer-shehane
Copy link
Member

@koenvangeert Could you sign our CLA?

@koenvangeert
Copy link
Contributor Author

@jennifer-shehane Can I do anything else to help this move forward?

@jennifer-shehane jennifer-shehane changed the title feat: improve performance combining coverage on large codebases fix: improve performance combining coverage on large codebases Jan 19, 2024
task.js Outdated Show resolved Hide resolved
@jennifer-shehane jennifer-shehane merged commit bf696bb into cypress-io:master Oct 2, 2024
22 of 24 checks passed
@cypress-app-bot
Copy link

🎉 This PR is included in version 3.13.4 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants