编译没有IDE的单个文件,c ++

时间:2013-01-20 14:18:31

标签: c++ visual-studio-2010 unit-testing compilation

我正在研究c ++的单元测试人员,主要是为了练习,但我被卡住了。

我希望它的工作方式如下:

  1. 它从已定义的测试文件夹及其子文件夹中的所有.hpp文件中读取所有类和函数名称。这些断言链接到记录器,该记录器输出带有测试结果的HTML文件。
  2. 它创建一个.hpp或.cpp文件,该文件创建每个测试类的一个实例并运行其中的每个函数。
  3. 它编译在步骤2中创建的.hpp / .cpp文件。
  4. 它运行第3步的输出。
  5. 我有1.和2.但是我在编译我创建的.hpp文件时遇到了问题。我最初想使用对cl.exe的简单调用进行编译,但事实证明这比我最初的预期更有问题。

    你们中的任何人都知道编译单个文件的好/简单方法吗? 我已经对make / nmake做了一些研究,但我不知道如何用它们来完成这个。

    另外,如果这种单元测试方法完全愚蠢,请告诉我。

    一些信息:     我正在使用Windows 7 64位和Visual Studio 2010

1 个答案:

答案 0 :(得分:0)

假设生成的something.cpp文件包含#include "something.hpp",那么它应该是cl something.cpp的情况,并且您得到something.exe,您可以以某种合适的方式运行。

“调用对象上的每个功能”似乎有点奇怪 - 你怎么知道结果是否正确?如果我们有一个复杂的对象,它可能需要的不仅仅是创建来支持调用所有函数。你传递给每个函数的参数是什么?你怎么知道应该归还什么?