UnitTest++ and main
UnitTest++ and main
我想给TDD一个尝试,我选择了unittest++框架,但文档几乎不存在(据我所知)。
我担心的是:在我看过的所有教程中,他们把UnitTest::RunAllTests()
放在main()
函数中。我猜他们这样做只是为了简化解释,但我不希望我的软件这样做。我应该把UnitTest::RunAllTests()
放在哪里,这样我就可以在每次构建软件时执行它,而不是在运行它时执行它?
UnitTest::RunAllTests()
应该放在一个单独程序的main
函数中,您可以将其编译并作为构建过程的一部分运行。
我们过去做过的一件事是添加一个命令行参数,使主可执行程序运行所有测试,然后退出。很容易安排一些#ifdef,以便在发布版本中编译这些代码。像这样(这不是很c++,但如果你还没有解析命令行参数,这是最简单的方法):
int main (int argc, char *argv[])
{
#ifdef DEBUG
if (argc > 1 && !strcmp(argv[2], "-t"))
{
return UnitTest::RunAllTests();
}
#endif
[rest of program]
}
相关文章:
- 为什么随机数生成器不在void函数中随机化数字,而在main函数中随机化
- 代码在main()中运行,但在函数中出现错误
- 当我在main中声明了我的2d数组时,为什么我的程序会退出
- C++核心准则 C35 对于接口类"A base class destructor should be either public and virtual, or protected and nonv
- QML:修改在不同QML文件(而非main.QML)中定义的子对象的属性
- 为什么C++逐位AND运算符在不同大小的操作数中表现为这样
- 为什么 Clang 不允许"and"作为函数名称?
- 不确定要在我的main中放入什么才能使我的代码正常工作
- 函数是否可以访问传递给main()的参数
- 在main()之外初始化std::vector会导致性能下降(多线程)
- 位阵列上的快速AND运算
- 是否可以在 C++03 中定义'move-and-swap idiom'等效项
- 我的 int main() 中出现堆栈溢出错误
- BoostPython and CMake
- C++变量名(可以将 main 声明为变量,但对于其他函数名称则不然)
- OpenSSL BIO and SSL_read
- 当我尝试在 Main 中调用插入函数时,它不是取数字?
- File.cpp.o:OpenPose 标志 CMakeFiles/.. 的多重定义/main.cpp.o:首先在这里定
- Using main.cpp and foo.cpp
- UnitTest++ and main