Collecting Metrics#
The PTB allows you to collect various metrics on the quality of your project regarding Coverage, Security, and Static Code Analysis.
Generating Metrics#
For each metric, there is a dedicated nox session, generating one or multiple files and based on a selected external Python tool.
Nox session |
Generated files |
Based on |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
These metrics are computed for each element in your build matrix, e.g. for each
Python version defined in the PROJECT_CONFIG of the noxconfig.py file.
The GitHub workflows of your project can:
Use a build matrix, e.g. using different Python versions as shown above
Define multiple test sessions, e.g. for distinguishing fast vs. slow or expensive tests.
Reporting Metrics#
The PTB uses only the metrics associated with the Python version specified by
exasol.toolbox.config.BaseConfig.minimum_python_version().
Nox session sonar:check uploads the findings to
SonarQube for aggregation and additional static
code analysis, presenting the results in Sonar’s feature-rich UI.
The CI workflow report.yml runs sonar:check after two additional Nox
sessions collect the artifacts from various jobs:
Nox session |
Actions |
|---|---|
|
|
|
|