cppcheck-junit

Converts Cppcheck XML output to JUnit format.


Keywords
Cppcheck, C++, JUnit, python, python3
License
MIT
Install
pip install cppcheck-junit==2.4.0

Documentation

cppcheck JUnit Converter

Tool that converts cppcheck XML output to JUnit XML format. Use on your CI servers to get more helpful feedback.

Installation

You can install, upgrade, and uninstall cppcheck-junit with these commands:

$ pip install cppcheck-junit
$ pip install --upgrade cppcheck-junit
$ pip uninstall cppcheck-junit

Usage

Enable XML version 2 output, enable additional rules (for example all), and redirect cppcheck stderr to a file:

$ cppcheck --xml-version=2 --enable=all . 2> cppcheck-result.xml

Convert it to JUnit XML format:

$ cppcheck_junit cppcheck-result.xml cppcheck-junit.xml

If no cppcheck errors are generated, a single "Cppcheck success" test case is output so that CI tools like Bamboo will not fail on the JUnit task.

Releases

2.4.0 - 2024-01-13

  • Support Python 3.12
  • Include error info from multiple locations
  • Added junitparser as a dependency to write junit output
  • Update unitests for argument parser
  • Enable mypy for type checking

2.3.0 - 2023-04-30

  • Drop Python 3.7 support and support Python 3.11

2.2.0 - 2022-03-29

  • Add optional argument for setting return code when cppcheck found errors.
  • Drop Python 3.6 and support Python 3.10.

2.1.0 - 2020-12-30

  • Drop Python 3.5 and support Python 3.9.

2.0.0 - 2020-03-29

  • Drop Python 2.7

1.7.0 - 2019-12-14

  • Drop Python 3.4 and support Python 3.8.
  • Include license file.

1.6.0 - 2018-07-09

Drop Python 3.3 and support Python 3.7.

1.5.0 - 2017-10-18

Fix Bamboo support by always filling in name and classname attributes on JUnit error test cases.

1.4.0 - 2017-06-14

Expand JUnit schema support by adding in some missing fields.

1.3.0 - 2016-12-31

Support Python 3.6.

1.2.0 - 2016-07-27

Actually handle cppcheck errors that don't have a <location> tag. Update test suite to use tox.

1.1.2 - 2016-04-13

Handle cppcheck errors that don't have a <location> tag.

1.1.1 - 2016-04-11

Fix requirements.txt include for setup.py.

1.1.0 - 2016-04-11

If no cppcheck errors are parsed, output a single success test case to satisfy Bamboo.

1.0.0 - 2016-02-15

Release 1.0.0. Increase test coverage.

0.2.0 - 2016-01-28

Added severity to JUnit message, improved help description, handle XML parsing errors.

0.1.0 - 2015-11-15

First release.