|Why can't a test suite be split into multiple OS processes? [message #1784735]
||Tue, 03 April 2018 11:11
| Ilya Basin
Registered: October 2011
It seems that the authors of the "C/C++ Unit Testing Support" weren't very perspicacious about the needs of programmers.
In C/C++ global variables are not that uncommon, especially, in command line tools. If I was to invoke such a tool during a test run, I would have to either call the main() function multiple times from a single process or use a test script to produce e.g. TAP output.
In the former case I would have to reset all initialized global variables to their initial state, which is not always possible. Besides, this would make parallel testing impossible. And there's another problem: a program crash or exit() call could be part of the expected result.
In the latter case (with a script) I would lose the possibility to debug the tested programs.
What we need: run or debug the whole test suite with a single button even this means launching multiple processes; have a pretty colored test results in the test view like today; breakpoints should work even if multiple processes are launched.
The TAP protocol cannot fulfill the need. It's too weak, its documentation is ambiguous. I'm not familiar with Google or QT runners. Are they anything close to what I described above? Can they, for example, instruct the IDE to launch the debugger?
[Updated on: Tue, 03 April 2018 11:16]
Report message to a moderator
Powered by FUDForum
. Page generated in 0.01807 seconds