我刚刚开始使用 TDD,并且很好奇其他人采用什么方法来运行他们的测试。作为参考,我使用的是谷歌测试框架,但我相信这个问题适用于大多数其他测试框架和 C/C++ 以外的语言。
到目前为止,我的一般方法是做以下三件事之一:
在静态库中编写大部分应用程序,然后创建两个可执行文件。一个可执行文件是应用程序本身,而另一个是包含所有测试的测试运行程序。两者都链接到静态库。
将测试代码直接嵌入应用程序本身,并使用编译器标志启用或禁用测试代码。这可能是我迄今为止使用过的最好的方法,但会使代码有点混乱。
将测试代码直接嵌入到应用程序本身中,并且,给定某些命令行开关,要么运行应用程序本身,要么运行嵌入在应用程序中的测试。
这些解决方案都不是特别优雅......
你是怎么做到的?