bpo-35513, unittest: TextTestRunner uses time.perf_counter() (GH-11180)

TextTestRunner of unittest.runner now uses time.perf_counter() rather
than time.time() to measure the execution time of a test: time.time()
can go backwards, whereas time.perf_counter() is monotonic.

Similar change made in libregrtest, pprint and random.
This commit is contained in:
Victor Stinner 2018-12-17 11:30:34 +01:00 committed by GitHub
parent 2cf4c202ff
commit 8db5b54463
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 19 additions and 15 deletions

View file

@ -168,7 +168,7 @@ class TextTestRunner(object):
warnings.filterwarnings('module',
category=DeprecationWarning,
message=r'Please use assert\w+ instead.')
startTime = time.time()
startTime = time.perf_counter()
startTestRun = getattr(result, 'startTestRun', None)
if startTestRun is not None:
startTestRun()
@ -178,7 +178,7 @@ class TextTestRunner(object):
stopTestRun = getattr(result, 'stopTestRun', None)
if stopTestRun is not None:
stopTestRun()
stopTime = time.time()
stopTime = time.perf_counter()
timeTaken = stopTime - startTime
result.printErrors()
if hasattr(result, 'separator2'):