[Test] Improve visibility of total test suite failures

Treat crashes when running the GTest test programs and the Python test suite as
being more severe than individual test failures.
This commit is contained in:
Ray Speth 2014-10-03 22:15:06 +00:00
parent a5149ae665
commit 6d4271fdfe
2 changed files with 13 additions and 9 deletions

View file

@ -93,8 +93,8 @@ Up-to-date tests skipped: %(skipped)s
Tests failed: %(failed)s Tests failed: %(failed)s
%(failures)s %(failures)s
*****************************""" % dict( *****************************""" % dict(
passed=len(self.passed), passed=sum(self.passed.values()),
failed=len(self.failed), failed=sum(self.failed.values()),
skipped=len(self.tests), skipped=len(self.tests),
failures=failures) failures=failures)

View file

@ -70,9 +70,11 @@ def addTestProgram(subdir, progName, env_vars={}):
else: else:
testResults.passed[testName] = 1 testResults.passed[testName] = 1
else: else:
# Total failure of the test program - unable to determine status # Total failure of the test program - unable to determine status of
# of individual tests # individual tests. This is potentially very bad, so it counts as
testResults.failed[passedFile.name] = program # more than one failure.
testResults.failed[passedFile.name +
' ***no results for entire test suite***'] = 100
testenv = localenv.Clone() testenv = localenv.Clone()
testenv['ENV'].update(env_vars) testenv['ENV'].update(env_vars)
@ -127,8 +129,10 @@ def addPythonTest(testname, subdir, script, interpreter, outfile,
failures += 1 failures += 1
if code and failures == 0: if code and failures == 0:
# Failure, but unable to determine status of individual tests # Failure, but unable to determine status of individual tests. This
testResults.failed[testname] = True # gets counted as many failures.
testResults.failed[testname +
' ***no results for entire test suite***'] = 100
testenv = localenv.Clone() testenv = localenv.Clone()
passedFile = File(pjoin(subdir, '%s.passed' % testname)) passedFile = File(pjoin(subdir, '%s.passed' % testname))
@ -176,9 +180,9 @@ def addMatlabTest(script, testName, dependencies=None, env_vars=()):
print results print results
print '------ end Matlab test results ------' print '------ end Matlab test results ------'
if 'FAILED' in results: if 'FAILED' in results:
testResults.failed[passedFile.name] = True testResults.failed[passedFile.name] = 1
else: else:
testResults.passed[passedFile.name] = True testResults.passed[passedFile.name] = 1
open(target[0].path, 'w').write(time.asctime()+'\n') open(target[0].path, 'w').write(time.asctime()+'\n')
testenv = localenv.Clone() testenv = localenv.Clone()