oe-selftest: timestamp the test runs
The selftest can take a couple of hours to run, so add a custom result class to timestamp the output to make it easy to spot any slow tests. (From OE-Core rev: cce89c44948ee66ad0abb491be57e270038270e4) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
545ff77df6
commit
b053b81e68
|
@ -176,7 +176,7 @@ def main():
|
|||
suite = unittest.TestSuite()
|
||||
loader = unittest.TestLoader()
|
||||
loader.sortTestMethodsUsing = None
|
||||
runner = unittest.TextTestRunner(verbosity=2)
|
||||
runner = unittest.TextTestRunner(verbosity=2, resultclass=StampedResult)
|
||||
# we need to do this here, otherwise just loading the tests
|
||||
# will take 2 minutes (bitbake -e calls)
|
||||
oeSelfTest.testlayer_path = get_test_layer()
|
||||
|
@ -196,6 +196,17 @@ def main():
|
|||
else:
|
||||
return 1
|
||||
|
||||
class StampedResult(unittest.TextTestResult):
|
||||
"""
|
||||
Custom TestResult that prints the time when a test starts. As oe-selftest
|
||||
can take a long time (ie a few hours) to run, timestamps help us understand
|
||||
what tests are taking a long time to execute.
|
||||
"""
|
||||
def startTest(self, test):
|
||||
import time
|
||||
self.stream.write(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) + " - ")
|
||||
super(StampedResult, self).startTest(test)
|
||||
|
||||
if __name__ == "__main__":
|
||||
try:
|
||||
ret = main()
|
||||
|
|
Loading…
Reference in New Issue