Holistic Software Quality Reporting


Keywords
quality, software, development, metrics, measurement, git, jenkins, jira, software-development, software-quality, sonarqube, subversion
License
Apache-2.0
Install
pip install quality-report==2.93.9

Documentation

PyPI Build Status Quality Gate BCH compliance Test Coverage Coverage Status codecov Code Climate Codacy Badge codebeat badge CodeFactor Requirements Status Known Vulnerabilities Updates

HQ - Holistic Software Quality Reporting

Application to generate quality reports for software development projects. Holistic because HQ attempts to measure as many aspects of software development as possible, seeing how software development can go off the rails in so many ways.

HQ itself is developed in Python (backend) and JavaScript (frontend), but can report on the quality of software developed in any language as it doesn't measure the quality itself, but instead relies on other tools to feed it information. Metric sources include SonarQube, Jenkins, Jira, Jacoco, JMeter, OWASP dependency checker, and more.

The user interface is currently available in Dutch only.

An example report is available via http://ictu.github.io/quality-report/.

This software was developed by ICTU (http://www.ictu.nl) to support the development of the Landelijk Register Kinderopvang for the Ministerie van Sociale Zaken en Werkgelegenheid.

See docs/AUTHORS.txt for contact information. See docs/LICENSE.txt for license information. See docs/HOWTO.txt for information on how to configure quality reports.

To be notified about HQ releases, you can subscribe to the releases atom feed via Blogtrottr

Screenshots

Dashboard

Each report has a dashboard that provides an overview of the project.

Screenshot

Metrics

Clicking a component (pie chart) in the dashboard navigates to the metrics of the clicked component.

Screenshot

Trend

Recent changes in individual metrics are displayed using spark line graphs. Long term changes are visible in the trend graphs.

Screenshot

Usage

Using Python 3.7

We recommend using virtualenv:

$ mkdir hq
$ cd hq
$ virtualenv --python-python3.7 .venv
$ . .venv/bin/activate

Unfortunately, one package that HQ uses isn't available from the Python Package Index (PyPI) and needs to be installed manually before we can install HQ itself:

$ pip install 'git+https://github.com/wekan/wekan-python-api-client.git#egg=wekanapi&subdirectory=src'
$ pip install quality_report

HQ can now be started from the command line. Adding the --help parameter should show a brief help message:

$ quality_report.py --help

See the HQ Wiki for more information on how to configure quality reports.

Using Docker

Pull the image from Docker Hub:

$ docker pull ictu/quality-report

HQ can now be started from the command line. Adding the --help parameter should show a brief help message:

$ docker run --rm -u `id -u`:`id -g` -v /etc/localtime:/etc/localtime:ro -v `pwd`:/work -w /work ictu/quality-report --help 

See the HQ Wiki for more information on how to configure quality reports.