C++ Jenkins QA Stack / Tools

edorian picture edorian · Sep 1, 2011 · Viewed 16.8k times · Source

We are currently in the process of building a QA stack for you C++ development.

We already have multiple Jenkins instances running and made very good experiences with the CI server in combination with other languages like java and php.

What I'm asking for are pointers to tool chains that can be used for C++ Development with Jenkins.

More specific (java / php examples in braces):

  • A unit testing framework that test and produces coverage reports (jUnit / phpUnit)
  • A coding guidelines checker (checkstyle / phpCodeSniffer)
  • Something PMD that spots potential problems in a code base (pmd / phpmd)
  • More if applicable / needed, but those 3 would be the basics i guess?

Bounty edit:

While i got an acceptable answer to my question I was asked to provide more tools / options / reasons to use Jenkins for this project.

In the past I've made suboptimal experiences with commercial tools in this regard. (What? You want to SAVE! those reports? Then you need to buy the extra 10k Bucks/Year plugin that can generate fancy GRAPHS! for you.) I might be wrong here so please tell me if I am.

But mainly I'm looking for a full stack of tools to use with Jenkins for C++ development and QA

Answer

Sagar picture Sagar · Sep 1, 2011

We use Jenkins with C & C++. These are tools that we have used, and I think you may find useful. All of them are usable with Jenkins:

  • Unit Testing Framework - cppunit : outputs xml which can be fed directly into Jenkins using the cppunit plugin
  • Coverage : gcov + gcovr produces good coverage reports
  • Coding guidelines checker : you can use pclint & the warnings plugin for this.
  • Mess Detector : Not sure what you mean by mess here, but we are using PMD/CPD for code duplication checking and NSIQ for complexity and LOC

We also use cppcheck for static analysis.

Hope that helps!