Hacker News new | ask | show | jobs
by cbab 4435 days ago
On recent C++ projects, I used the TAP [0] test format. It's quite minimalistic and does the job.

Debugging tools have improved quite a bit. I suggest you take a look at asan [1] for memory related errors. Also, tsan [2] looks very promising for data races detection. I think both tools have been integrated within LLVM/Clang/GCC.

Also, you might want to take a look at tracing tools such as (shameless plug!) LTTng [3] for userspace.

Static analysis tools are quite "en vogue" right now. IMO, nothing comes close to Coverity Scan [4]. It's free for open source projects, but you will have to fork (quite) a bit of money to run this tool on proprietary applications. On the other hand, purely FOSS static-analyzer such as clang-analyzer and cppcheck can catch nasty errors. I would suggest using a mix of all these tools.

[0] - http://testanything.org/testing-with-tap/c-plus-plus.html

[1] - https://code.google.com/p/address-sanitizer/

[2] - https://code.google.com/p/data-race-test/wiki/ThreadSanitize...

[3] - http://lttng.org/ust

[4] - https://scan.coverity.com/