ThrowTheSwitch / Ceedling

Ruby-based unit testing and build system for C projects

Home Page:http://throwtheswitch.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Is there a plugin to create a command to run a test under gdb or any other debugger other then doing it manually?

hpe-ykoehler opened this issue · comments

It would be nice to have a way to run ceedling with a test that is known to fail into a debugger, removing the need to manually enable the debug flags, find the binary path, then find the toolchain-specific gdb program and connect all this together, etc.

Even better would be to enable ceedling to get gdb stack strace whenever a test crash, or set a breakpoint to the assert location and re-run the test in gdb.

Feel free to try the pre-release gem for 0.32 in the releases section of github. You'll find it does stack tracing on failures for you, if you enable them by setting :use_backtrace_gdb_reporter to true

Thanks, I will have a look at that, sounds quite interesting.

Hi @hpe-ykoehler ,

If you would like to add it another debugger, you might find some problems. I created a fix for adding support for instance to setup Valgrind. The changes are waiting for CR in PR:

#749

Feel free to ping me if something will not work for you.

The latest pre-release of Ceedling includes robust support for dissecting and reporting crashed tests. :project:use_backtrace recognizes :none, :simple, and :gdb. Ceedling defaults to :simple. If :gdb is selected (and gdb is installed), Ceedling extracts the most important lines from the backtrace report and presents them in a nicely packaged console report when using report_tests_pretty_stdout plugin. See the Release Notes and Ceedling Packet for details.

The full backtrace can be viewed with debug verbosity. Valgrind support is still in the backlog to be incorporated as a plugin.