-
Notifications
You must be signed in to change notification settings - Fork 6
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
Improve testing speed #244
Labels
enhancement
New feature or request
Comments
Here are the 20 slowest tests for instance:
|
jdeschamps
added a commit
that referenced
this issue
Sep 9, 2024
### Description Currently the CI is extremely slow (#244), to a point where it requires 30 mins between pushing a fix and seeing whether all tests pass... It is in particular due to the addition of numerous LVAE tests. Until we go over all the tests and sanitize them a bit, this should allow faster execution. This PR is a temporary solution to make it easier to work: - Split the CI between the "officially supported" algorithms and the LVAE. - Make LVAE CI run on a single python version and two runners (ubuntu and windows, macos being super slow) - Add codecov CI to have the code coverage computed from running all tests (single runner, single python version) - Add codecov threshold to not fail if there difference in coverage is less than 2% - Reduce `n_images` from `100` to `10` in welford tests Summary: - **What**: Make CI run faster. - **Why**: Currently, CI is excruciatingly slow. - **How**: Split slow LVAE tests into their own CI running on fewer runners. ### Changes Made - **Added**: - `lvae.yml` CI - `codecov.yml` CI - `codecov.yml` configuration file (in root) - **Modified**: - all LVAE test files with the marker `lvae` - `pyproject.toml` to register the `lvae` marker - welford tests to reduce their length ### Related Issues #244
Merged #245 Current solution has three CIs:
This is a temporary fix, in the future we should include the LVAE code in the main CI (once it has been refactored) and make sure that the tests are sane. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Since the addition of LVAE tests, testing is taking 10 to 30 minutes per PR / commit. That is way too long...
We could add a
pytest.mark
to signify tests that take a long time and only have them run on a single platform and only fully on main. That's a bit dangerous because they might escape platform specific problems.We could also revisit all the tests that take too long and see whether they are entirely necessary.
The text was updated successfully, but these errors were encountered: