oetest: make console output more verbose

Added output of test runner to bitbake console output.
bitbake <image> -c testimage now reports test progress
to the console:
NOTE: Executing RunQueue Tasks
...
NOTE: recipe core-image-lsb-1.0-r0: task do_testimage: Started
core-image-lsb-1.0-r0 do_testimage: test_ping (oeqa.runtime.ping.PingTest) ... ok
core-image-lsb-1.0-r0 do_testimage: test_ssh (oeqa.runtime.ssh.SshTest) ... ok
...
----------------------------------------------------------------------
core-image-lsb-1.0-r0 do_testimage: Ran 38 tests in 785.100s
core-image-lsb-1.0-r0 do_testimage:
core-image-lsb-1.0-r0 do_testimage: OK (skipped=1)

Adding more output to the console should also prevent autobuilder to kill
long running tests as ab assumes that test is stuck if no console output
produced by it for a long time.

[YOCTO #8238]

(From OE-Core rev: 06aa68138ec67623892221fbe9516bbb3795b48e)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Ed Bartosh 2016-04-18 15:27:24 +03:00 committed by Richard Purdie
parent 4946ecfb42
commit ecaf12ea5b

View File

@ -7,7 +7,7 @@
# It also has some helper functions and it's responsible for actually starting the tests # It also has some helper functions and it's responsible for actually starting the tests
import os, re, mmap import os, re, mmap, sys
import unittest import unittest
import inspect import inspect
import subprocess import subprocess
@ -326,12 +326,8 @@ class TestContext(object):
logger.info("Filter test cases by tags: %s" % self.tagexp) logger.info("Filter test cases by tags: %s" % self.tagexp)
logger.info("Found %s tests" % self.suite.countTestCases()) logger.info("Found %s tests" % self.suite.countTestCases())
runner = unittest.TextTestRunner(verbosity=2) runner = unittest.TextTestRunner(verbosity=2)
try: if 'bb' in sys.modules:
if bb.msg.loggerDefaultVerbose: runner.stream.write = custom_verbose
runner.stream.write = custom_verbose
except NameError:
# Not in bb environment?
pass
return runner.run(self.suite) return runner.run(self.suite)