6 ms·
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
by cbab 12y 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 http://testanything.org/testing-with-tap/c-plus-plus.html
[1] - https://code.google.com/p/address-sanitizer/ https://code.google.com/p/address-sanitizer/
[2] - https://code.google.com/p/data-race-test/wiki/ThreadSanitizer https://code.google.com/p/data-race-test/wiki/ThreadSanitize...
[3] - http://lttng.org/ust http://lttng.org/ust
[4] - https://scan.coverity.com/ https://scan.coverity.com/