Makefile: Add a pcheck option to run tests in parallel

Running tests in parallel is much faster, e.g. 15 seconds to run the tests
on sandbox (only), instead of 100 seconds (on a 16-core machine). Add a
'make pcheck' option to access this feature.

Note that the tools/ tests still run each tool's tests once after the
other, although within that, they do run in parallel. So for example,
the buildman tests run in parallel, then the binman tests run in
parallel. There would be a signiificant advantage to running them all
in parallel together, but that would require a large amount of
refactoring, e.g. with more use of pytest fixtures.

Update the documentation to represent the current state.

Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Simon Glass
2022-08-06 17:51:59 -06:00
committed by Tom Rini
parent e1c0811114
commit d1962ac797
4 changed files with 64 additions and 27 deletions

View File

@@ -521,8 +521,8 @@ env_h := include/generated/environment.h
no-dot-config-targets := clean clobber mrproper distclean \
help %docs check% coccicheck \
ubootversion backup tests check qcheck tcheck pylint \
pylint_err
ubootversion backup tests check pcheck qcheck tcheck \
pylint pylint_err
config-targets := 0
mixed-targets := 0
@@ -2364,6 +2364,7 @@ help:
@echo 'Test targets:'
@echo ''
@echo ' check - Run all automated tests that use sandbox'
@echo ' pcheck - Run quick automated tests in parallel'
@echo ' qcheck - Run quick automated tests that use sandbox'
@echo ' tcheck - Run quick automated tests on tools'
@echo ' pylint - Run pylint on all Python files'
@@ -2409,6 +2410,9 @@ help:
tests check:
$(srctree)/test/run
pcheck:
$(srctree)/test/run parallel
qcheck:
$(srctree)/test/run quick