为测试单元创建目录C++ [Code :: Blocks]
问题描述:
目前我正在完成我的学校项目,但最后需要做的事情是文档。我对单元测试感到困惑,基本上我知道的是,我需要一个testfile.cpp
为我创建的每个类。但我不知道该把文件放在哪里,因为我的导师告诉我在testfile.cpp
里面有一个main()
但是不是一个项目只能有一个main()
?为测试单元创建目录C++ [Code :: Blocks]
是否有任何可能的方式我可以创建一个新的文件夹并将其命名为TestingFolder为例,然后将testfile.cpp
放入里面但仍然可以执行以证明。
请评论是否有任何问题不清楚,我是新来的C++和文档,道歉。
答
您不能有多个main()
函数。但是您可以为所有cpp测试文件的每个main()
函数创建特定的namespace
。
testfile.cpp
namespace test
{
TESTCASE()
{
....
}
int main()
{
RUN_ALL_TESTS();
return 0;
}
}
main.cpp中(真正的主文件)
int main()
{
bool flag = true;
if(flag)
{
test::main();
anotherNamespace::main() // for each test files (for each class that
// should be tested)
return 0;
}
}
凡flag
意味着一个布尔变量如果测试被激活。 如果你的老师想在同一个C++项目中使用main()
函数,这就是解决方案。通常,为单元测试创建另一个项目。