我需要暂时在我的对象中放置main()
函数来测试备用功能(超出简单的单元测试),但我不得不注释掉我的main()
函数来运行我的单元测试。
CxxTest是否有#define _KEYWORD_
允许这种情况自动发生?
答案 0 :(得分:2)
您只需根据CXXTEST_RUNNING
关键字的定义,使用编译器指令封装违规代码。
例如:
class myClass {
public:
myClass () {}
};
#ifndef CXXTEST_RUNNING
int main (int argc, char *argv[]) {
// Temporary runner. Typically deleted upon completion
// of alternate functionality added later in the project.
}
#endif
在这种情况下,使用CxxTest框架时,将忽略main()
函数,以支持测试框架创建的main()
。否则,将使用您提供的main()
功能。