代码之家  ›  专栏  ›  技术社区  ›  user869525

利用现有项目进行CppUnit测试

  •  1
  • user869525  · 技术社区  · 14 年前

    我是CppUnit测试的新手,我有一套基本的问题。

    因此,CppUnit测试需要一个主函数来运行。然而,我希望这个main与我想要测试的项目的main是分开的。因此,由于在一个项目中不能有两个主要功能,我创建了一个子项目(顺便说一下,我使用的是Qt),它将容纳我所有的测试类。然而,这似乎导致了它自己的一系列问题,因为在Qt中,我可以指定要运行的子项目。这可能意味着我不能将它们作为子项目,并将它们分开。

    我习惯了JUnit,其中有一对1的类来测试类,当我想在类上运行测试用例时,我会右键单击它并运行。不需要主要功能。

    我想我正在寻找一个如何测试一个现有的、成熟的、目前没有测试的项目的解释。我所发现的一切都假设您正在并行开发项目及其测试。

    非常感谢。

    1 回复  |  直到 14 年前
        1
  •  0
  •   WhozCraig    14 年前

    CPUUnit足够灵活,您可以轻松地测试大多数代码的功能领域:我称之为消费端和实现端。

    从一个预先存在的大型库开始,通常最好设置大量使用cppunit中fixture的外部“消耗”测试用例。为此,您实质上是在测试对象类的外观向内功能。您将在fixture中设置您熟悉的对象,并为它们编写测试用例。随着时间的推移,添加越来越多特定于每个类内部的内部测试用例,并在它们与交互的类相关时进行配对。最终,您编写的所有新代码都将集成测试用例或与之配对(随着时间的推移,实际上是成百上千)。

    我会第一个告诉你,cppunit不是银弹,而且毫无用处 近的 像junit一样灵活(语言本身缺乏反思是一个巨大的原因)。但花时间肯定还是值得的。