Tooling for converting coverage data into a SQL DB
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Andreas Jaeger 9995eee4c0 Switch to newer openstackdocstheme and reno versions 2 years ago
coverage2sql Update hacking for Python3 2 years ago
doc Switch to newer openstackdocstheme and reno versions 2 years ago
etc Remove unused config entries from sample config 3 years ago
releasenotes Switch to newer openstackdocstheme and reno versions 2 years ago
tools Prepare for using standard python tests 5 years ago
.coveragerc Omit unit test files from coverage 6 years ago
.gitignore Ignore *.db file from git repo 3 years ago
.gitreview OpenDev Migration Patch 3 years ago
.mailmap Initial Cookiecutter Commit. 6 years ago
.stestr.conf Switch to use stestr instead of os-testr 5 years ago
.zuul.yaml [ussuri][goal] Drop python 2.7 support and testing 2 years ago
CONTRIBUTING.rst [ussuri][goal] Update contributor documentation 2 years ago
HACKING.rst Update url in HACKING.rst 4 years ago
LICENSE Initial Cookiecutter Commit. 6 years ago Add unit tests and remove oslo_db 6 years ago
README.rst Use opendev repository 3 years ago
babel.cfg Initial Cookiecutter Commit. 6 years ago
bindep.txt Fix gate error "mysqladmin: command not found" 3 years ago
requirements.txt Update requirements 5 years ago
setup.cfg Cleanup py27 support 2 years ago Cleanup py27 support 2 years ago
test-requirements.txt Fix hacking min version to 3.0.1 2 years ago
tox.ini Cleanup py27 support 2 years ago


Team and repository tags


coverage2sql README

Command to Read a coverage file and put the data in a SQL database

coverage2sql is a tool for storing data of test coverage into a SQL database. With using this tool, you can store time series coverage data and analyze it if your coverage rate is down.


DB Setup

The usage of coverage2sql is split into 2 stages. First you need to prepare a database with the proper schema; coverage2sql-db-manage should be used to do this. The utility requires db connection info which can be specified with a config file. Obviously the sql connector type, user, password, address, and database name should be specific to your environment. coverage2sql-db-manage will use alembic to setup the db schema. You can run the db migrations with a config file:

coverage2sql-db-manage --config-file etc/coverage2sql.conf upgrade head

This will bring the DB schema up to the latest version for coverage2sql.


Once you have a database setup with the proper database schema you can then use the coverage2sql command to populate the database with data from your test coverage file. coverage2sql takes in a .coverage file through by passing it file paths as positional arguments to the script at this moment.

For example:

coverage2sql --config-file etc/coverage2sql.conf coverage2sql .coverage

There are several options for running coverage2sql, they can be listed with:

coverage2sql --help

The only required option is --database-connection. The options can either be used on the CLI, or put in a config file. If a config file is used you need to specify the location on the CLI.


To see the TODO, go to the launchpad site:


To see the release notes go here: