-
Notifications
You must be signed in to change notification settings - Fork 816
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
all: default should be to run only fast tests, opt in for slow and complicated tests #214
Comments
We can decouple the running time from the test dependencies. For example we can have tags like For example, a test taking over 1 second and accessing the network would have this build constraint:
and could be run with
Thanks to Chris Lewis for this suggestion. |
For tests that need to replay, we can have two versions of them, one with a
build constraint and another with
A downside of this approach might be some copy/pasting. |
(This issue is related to #28 by way of test speed, but this is mostly about local development, not CI.) |
This needs some design work: we don't want to give too many knobs ( Such a design needs to consider the flow of:
|
Yes, I think there needs to be a design doc as there are many ways to modify the behavior, but no one clear winner AFAICT, all have trade-offs and those trade offs change depending on the test environment/user. |
At present, running
vgo test ./...
at the root takes 1m20s and outputs lots of failures if its dependencies have not been set up.The current way to work around that is to add the
-short
flag mentioned inCONTRIBUTING.md
, but it's easy to forget and seems like the reverse of how things should be arranged. Also, that still doesn't filter out the wire tests, and those take 40s to run on my laptop.I suggest we use build tags to allow opting in to running progressively larger and more complicated tests. We could use the usual Google test size conventions for these. There would probably need to also be an additional, implicit size of
tiny
for the many test files that run in under 1s or so. Running only those tests would then be the default that happens when runningvgo test ./...
.The text was updated successfully, but these errors were encountered: