In the summary after a test, yocto-compat-layer.py explains which tests failed, but then doesn't actually indicate that to the caller in the return code: $ oe-selftest ... INFO: ---------------------------------------------------------------------- INFO: Ran 4 tests in 2.756s INFO: INFO: FAILED (errors=1, skipped=3) INFO: INFO: Summary of results: INFO: INFO: meta-refkit-gateway ... FAIL # echo $? 0 That's because main() in yocto-compat-layer.py always returns 0. It would be better if it returned 1 if any test failed and 2 if none were run. The a script can test for success (== 0) and distinguish between different kinds of failures (error or no tests) if desired.
Review at, http://lists.openembedded.org/pipermail/openembedded-core/2017-June/137575.html
Merge at, http://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=dd3473c7e679bb4bab7bf82f1b9fae910039a343