From abbc525dd3cbe142753c5b44a2717c1ed6b26723 Mon Sep 17 00:00:00 2001 From: Jeff Darcy Date: Wed, 15 Apr 2015 22:58:59 -0400 Subject: tests: ignore results from some spuriously-failing tests These tests were selected based on a survey of the last 50 apparently spurious regression failures involving only one test, as of April 21, 2015. They were responsible for the following number of failures out of those 50. volume-snapshot.t: 24 uss.t: 8 glupy.t: 5 In other words, they were responsible for 74% of those failures. Until they're fixed (or we find some generic problem to which they're particularly vulnerable for some reason), ignoring their results should significantly improve our regression-test success rate. Change-Id: Ia0c2600df387f0bccc9dce819582fc883bdb5b89 BUG: 1163543 Signed-off-by: Jeff Darcy Reviewed-on: http://review.gluster.org/10322 Tested-by: Gluster Build System Tested-by: NetBSD Build System Reviewed-by: Vijay Bellur --- run-tests.sh | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) (limited to 'run-tests.sh') diff --git a/run-tests.sh b/run-tests.sh index 2a819dba656..eced93f8325 100755 --- a/run-tests.sh +++ b/run-tests.sh @@ -187,13 +187,26 @@ function run_tests() return ${RES} } -function run_all () +# If you're submitting a fix related to one of these tests and want its result +# to be considered, you'll need to remove it from the list as part of your +# patch. +function is_bad_test () { - old_cores=$(ls /core.* 2> /dev/null | wc -l) + local name=$1 + for bt in ./tests/basic/volume-snapshot-clone.t \ + ./tests/basic/uss.t \ + ./tests/features/glupy.t; do + [ x"$name" = x"$bt" ] && return 0 # bash: zero means true/success + done + return 1 # bash: non-zero means false/failure +} +function run_all () +{ find ${regression_testsdir}/tests -name '*.t' \ | LC_COLLATE=C sort \ | while read t; do + old_cores=$(ls /core.* 2> /dev/null | wc -l) retval=0 prove -f --timer $t TMP_RES=$? @@ -208,7 +221,11 @@ function run_all () retval=$((retval+2)) fi if [ $retval -ne 0 ]; then - return $retval + if is_bad_test $t; then + echo "Ignoring failure from known-bad test $t" + else + return $retval + fi fi done } -- cgit