Tooling for converting coverage data into a SQL DB
Go to file
Andreas Jaeger d1da647844 Prepare for using standard python tests
Add simple script to setup mysql and postgresql databases,
this script can be run by users during testing and will be
run by CI systems for specific setup before running unit tests.

This allows us to change in project-config the python-db jobs to
python-jobs since python-jobs will call this script initially.

See also http://lists.openstack.org/pipermail/openstack-dev/2016-November/107784.html

Needed-By: Ie77f7d0ecd78e513ad7beb0acd6bf173703eeaed
Change-Id: I6e18d780c14bd93c78c77220b4a1debdc88a19c9
2017-02-02 12:11:19 +00:00
coverage2sql Add unit tests for shell.py 2016-12-05 05:06:51 -08:00
doc/source Initial Cookiecutter Commit. 2016-04-19 12:24:29 +09:00
etc Add unit tests and remove oslo_db 2016-11-11 11:33:43 +09:00
releasenotes Add releasenote 2016-11-11 10:35:13 +09:00
tools Prepare for using standard python tests 2017-02-02 12:11:19 +00:00
.coveragerc Omit unit test files from coverage 2016-11-11 19:40:27 +09:00
.gitignore Add adding data feature 2016-04-21 16:40:45 +09:00
.gitreview Initial Cookiecutter Commit. 2016-04-19 12:24:29 +09:00
.mailmap Initial Cookiecutter Commit. 2016-04-19 12:24:29 +09:00
.testr.conf Initial Cookiecutter Commit. 2016-04-19 12:24:29 +09:00
CONTRIBUTING.rst Initial Cookiecutter Commit. 2016-04-19 12:24:29 +09:00
HACKING.rst Initial Cookiecutter Commit. 2016-04-19 12:24:29 +09:00
LICENSE Initial Cookiecutter Commit. 2016-04-19 12:24:29 +09:00
MANIFEST.in Add unit tests and remove oslo_db 2016-11-11 11:33:43 +09:00
README.rst Add ChangeLog URL to README.rst 2017-01-31 10:55:04 +09:00
babel.cfg Initial Cookiecutter Commit. 2016-04-19 12:24:29 +09:00
requirements.txt Introduce pip-check-reqs task to tox 2016-11-18 15:43:04 +09:00
setup.cfg Add migration and shell 2016-04-19 19:00:55 +09:00
setup.py Initial Cookiecutter Commit. 2016-04-19 12:24:29 +09:00
test-requirements.txt Fix the docs error 2017-01-06 09:24:09 -08:00
tox.ini H305/H402 hacking have been deprecated 2017-01-10 04:24:43 +00:00

README.rst

Team and repository tags

image

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.

Usage

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 on the command or 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 the command:

coverage2sql-db-manage --database-connection mysql://coverage:pass@127.0.0.1/coverage upgrade head

or 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.

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.

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.

TODO

To see the TODO, go to the launchpad site:

ChangeLog

To see the release notes go here: http://docs.openstack.org/releasenotes/coverage2sql/