8

我有一个包含 50 多个.H/.CPP文件/类的项目。我想用自己的测试用例来测试每个类,其中包括测试每个类不同方面的方法。我的课程位于不同的目录中,如下所示:

/project
  /include
    /SuperModule
      Foo.h
      Foo.cpp
      ..
    Alpha.h
    Alpha.cpp
    ..
  /test         // I assume that my tests shall be here
  main.cpp
  Makefile

我想使用boost::test作为单元测试框架。我应该如何组织我的文件,我应该如何命名它们等。一些提示或链接或建议将不胜感激。谢谢。

4

1 回答 1

2

我们在类似的布局中使用 boost::test。我们的布局是——

/project
  /include
    /SuperModule
       /Foo
        foo.c
        foo.h
        /foo_unittest
            foo_unittest.c   // note - no separate header file is required 
                             // for boost::test unit test.exe program.

基本布局规则是将类的单元测试放在与源代码相同目录中的类之后名为“foo_unittest”的子目录中。这个命名的好处是

  1. 源代码和目录彼此相邻存储。因此,通过简单的检查,您可以查看您是否编写了单元测试。
  2. 另外,在复制源代码的时候,很容易同时复制单元测试。

由于我们的项目并不太复杂(30-50 个主要课程),因此该系统适用于我们。如果您正在运行较大的项目,我认为这不是最佳解决方案。

于 2010-07-06T00:55:40.830 回答