Cxx测试编译,缺少主
CxxTest compiling, missing main
我正在使用CxxTest进行单元测试。我按照文档进行操作。
我执行的第一个命令是:
cxxtestgen --error-printer -o runner.cpp MyTestSuite1.h
命令的输出是runner.cpp
文件。
根据文档,下一个命令应该是:
g++ -o runner -I(location_of_the_cxxTest_headers) runner.cpp
但我无法执行它,我收到有关缺少入口点的错误。换句话说,runner.cpp
缺少主。
CxxTest 中包含的测试文件也会发生同样的事情。
我正在运行Windows 8.1。
我的问题被标记为重复,但我在另一个问题中没有找到解决方案。我不是在构建 GUI 应用程序。问题是关于 CxxTest 的,如果没有main()
函数,它是如何启动的?切入点在哪里?
我在查看用于生成runner.cpp
的 python 脚本cxxtestgen.py
后找到了解决方案。在writeMain(output)
函数的开头有一个 if 语句,它将main
函数写入输出文件:
if not (options.gui or options.runner):
return
从测试套件生成输出文件时,至少需要两个选项中的一个,即 --runner=CLASS
和 --gui=CLASS
。添加一个选项后,一切正常。
相关文章:
- 无法编译 rtmidi 测试 cmidiin.cpp 文件, 非法指令
- 用于交叉编译和CMake的预处理器宏的单元测试
- MinGw 无法从 cmake 编译测试文件
- C++代码以测试另一个.cpp如果可以编译它
- 提升 1.64 单元测试编译失败
- 在C++中使用 Catch 测试框架编译错误"error: expected ';' at end of declaration list"
- 有没有办法在不使用 #ifdef 的情况下不编译发布版本中的单元测试函数体?
- 在Raspbian上编译pybind11测试用例时出现致命错误
- 如何让谷歌测试正常运行。测试总是失败。(它不会编译)
- 如何从测试脚本中运行WAF编译C++程序?
- 如何测试采用 std::initializer_list 的 ctor 具有编译时已知长度?
- 谷歌测试编译错误 Os X:函数式转换从"int"到"internal::FloatingEq2Matcher"的模糊转换<float>
- 使用Mingw-w64编译Google测试
- Cmake无法在qt-creater/collect2上编译简单的测试程序:错误:ld
- Cxx测试编译,缺少主
- C++测试编译错误
- SDL测试编译期间出错
- 为什么谷歌测试编译,但不能看到我的项目来源
- Gtest:测试编译错误
- Boost 单元测试编译通过 Eclipse 失败