-
Notifications
You must be signed in to change notification settings - Fork 2.4k
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
Reorganize integration tests as one crate with many modules #4867
Comments
This may no longer be a problem with incremental compilation, but historically I haven't done this because it makes compilation time for tests huge. Would just want to be sure that editing tests doesn't take minutes to get a new artifact! |
Yeah, the alternative would be for tests not to link with |
I can try to do. |
Reorganize integration tests as one crate with many modules. Issue #4867. Rebased V3 This is an automatic rebase of @rochamatcomp's work in #5022, as requested in [#5038](#5038 (comment)). I take no credit for the changes; I just wanted faster test for my work. :-)
Proposing new integration tests structure ispired by rust-lang/cargo#4867 Example: ``` tests/ component/ main.rs component1.rs component2.rs integration/ main.rs component1_component2.rs end2end/ main.rs voting.rs non_functional/ main.rs load.rs ``` In this way we will have 4 crates. Performances could be improved by having only one crate but I think the structure will became to messy Ideas welcome @nicopado @stevenj
Currently, Cargo has a huge amount of integration tests. The problem with them is that each test is a separate artifact, and each tests gets a copy of Cargo linked in. This leads to a HUGE
./target
directory aftercargo test
, about7 GB
.What if instead we have only one crate with integration tests, which consists of a number of submodules? That is, to have this layout
The text was updated successfully, but these errors were encountered: