-
Notifications
You must be signed in to change notification settings - Fork 8.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
DEV: Add a new way to run specs in parallel with better output #7778
DEV: Add a new way to run specs in parallel with better output #7778
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Overall this is excellent, good job.
I would like to be annoying though and suggest an alternative name from InterleavedTests
which seems a bit technical and hard to remember/type.
How about something like:
FastTests
TurboTests
QuickTests
RapidTests
@eviltrout, I appreciate the comments! I will fix those things tomorrow. |
Some questions:
Looking forward to merging this in! Awesome work. |
I've filed an issue in the
Ok
The default is now parallel with |
b263c5b
to
436b49f
Compare
d431c67
to
4341c5c
Compare
This commit: 1. adds a new executable, `bin/interleaved_rspec` which works much like `rspec`, but runs the tests in parallel. 2. adds a rake task, `rake interleaved:spec` which runs the whole test suite. 3. makes autospec use this new wrapper by default. You can disable this by running `PARALLEL_SPEC=0 rake autospec`. It works much like the `parallel_tests` gem (and relies on it), but makes each subprocess use a machine-readable formatter and parses this output in order to provide a better overall summary. (It's called interleaved, because parallel was taken and naming is hard).
4341c5c
to
8cb489f
Compare
|
||
command = begin | ||
if ENV["PARALLEL_SPEC"] && | ||
if ENV["PARALLEL_SPEC"] != '0' && |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I prefer to have this opt in for a few weeks, so do this for now:
if ENV["PARALLEL_SPEC"] == '1'
OK ... I want to try this out... we can refine in followup commits. |
You've signed the CLA, danielwaterworth. Thank you! This pull request is ready for review. |
This PR:
adds a new executable,
bin/interleaved_rspec
which works much likerspec
, but runs the tests in parallel.adds a rake task,
rake interleaved:spec
which runs the whole testsuite.
makes autospec use this new wrapper by default. You can disable this
by running
PARALLEL_SPEC=0 rake autospec
.It works much like the
parallel_tests
gem (and relies on it), butmakes each subprocess use a machine-readable formatter and parses this
output in order to provide a better overall summary.
(It's called interleaved, because parallel was taken and naming is
hard).