The otopi 1.6.0 package currently in ovirt-master-snapshot includesa new feature that allows you to collect coverage reports from your executions.
In order to enable the feature you'll need to provide
a configuration file like:
8<--------------------------------------
[run]
branch = True
[report]
exclude_lines =
# Have to re-enable the standard pragma
pragma: no cover
# Don't complain about missing debug-only code:
def __repr__
if self\.debug
# Don't complain if tests don't hit defensive assertion code:
raise AssertionError
raise NotImplementedError
# Don't complain if non-runnable code isn't run:
if 0:
if __name__ == .__main__.:
ignore_errors = True
8<------------------------------------
Be sure to have python-coverage and libselinux-python installed on your system and then execute:
OTOPI_COVERAGE=1 COVERAGE_PROCESS_START=<your config> <your command>
where your config is the path to your config file and your command may be engine-setup, engine-cleanup, ovirt-host-deploy, hosted-engine --deploy or any other possible command which uses otopi framework.
In order to generate the report:
coverage html -d coverage_html_report
More test jobs will possibly follow.
New tests to improve coverage, improvements to the coverage configuration, suggestions, porting to other projects are welcome.
--
Sandro Bonazzola
Better technology. Faster innovation. Powered by community collaboration.
See how it works at
redhat.com