Le 14 mars 09 à 13:39, Akim Demaille a écrit :
I often use
STRICT_TEST_LOGS = $(shell $(LIST_FAILED_TEST_LOGS))
which makes all failing test strict. In other words, successful
tests are not rerun by "make check", but failing tests are. This is
because our test suite sometimes hits the limit of the machine, and
tests timeout for no sound reason. So there is no reason to rerun
successful tests, but failing test might pass if the machine has a
lesser load.
FWIW, I also noticed that we sometimes had tests that were removed/
renamed that were still marked as XFAILs. So I use this in some of my
test suites:
# Check that XFAIL tests do exist.
check-test-list-%:
@exit=true; \
for f in $($*); do \
if test ! -f $$f && test ! -f $(srcdir)/$$f; then \
echo >&2 "$*: $$f does not exist"; \
exit=false; \
fi; \
done; \
$$exit
.PHONY check-TESTS: check-tests
check-tests: check-test-list-XFAIL_TESTS check-test-list-TFAIL_TESTS