1

CXX 测试框架有多有效,因为您正在围绕您编写的代码编写单元测试用例。代码中的任何错误也可能被翻译成单元测试代码中的错误?不是像两个负数就变成一个正数吗?

此外,花在 CXX 上的时间和精力至少等于(如果不超过)编码工作量。

需要你对此的想法,因为我不赞成在我的项目中使用这个框架,并且正在寻找反对它的强项。

另一方面,如果您认为它是有益的,请赐教:)。

4

4 回答 4

4

谷歌提供了一个我用过的很棒的 C++ 测试框架……我从来没有使用过任何其他的 C++ 测试框架,并且对Junit 的经验有限,而且我能够很快地掌握它,因为文档很好。使用一个好的测试框架很重要,因为测试太重要了,不能因为对框架的失望而放弃。这是一个链接:

http://code.google.com/p/googletest/

希望这可以帮助!

于 2009-04-08T02:49:16.913 回答
2

CXX 不是很活跃,写单元测试一般要花很多功夫。但是当第一次重构出现时,您会非常感谢所付出的努力。

我用过Boost.Test & CPPUNIT。我更喜欢一点 Boost.Test,但是是的,你必须编写自己的项目、文件等。

如果您知道从代码中生成骨架的工具,我会全力以赴。:)

我建议你试试 Boost.Test 和 CPPUNIT。如果你认为有更好的选择,它会给你很好的机会来反对 CXXUNIT,因为你会提出替代方案。

于 2009-04-06T09:57:17.807 回答
2

我正在使用 cxxtest。回归测试是一项昂贵的任务,我们仅用于验证我们的软件库——它为我们的应用程序提供了一个独立于平台的层。这是为了确保所有更改都不会影响代码的稳定性,因为有如此多的应用程序和项目并且依赖于它们。

我们将 cxxtest 与覆盖率分析相结合,以确保测试覆盖率足够,并与 CruiseControl 一起实现自动化。

但我们不会为应用程序这样做。太费劲了。

构建测试应用程序与编写整个库本身一样困难。我同意你需要弄清楚这是否值得你花时间。

我认为乔尔对此也有话要说:http: //www.joelonsoftware.com/items/2009/01/31.html

于 2009-04-06T10:56:56.570 回答
0

我更喜欢仅包含标头的测试框架,这里有两个:TUTCatch。之前在几个项目中使用过TUT ,不久前发现了Catch 。

1) TUT -- C++模板单元测试框架

TUT 是一个用于 C++ 的小型可移植单元测试框架。

  • 无论您使用什么编译器或操作系统,TUT 都非常便携。
  • TUT 仅包含头文件。不需要库,部署从未如此简单。
  • 自定义报告界面允许将 TUT 与世界上几乎任何 IDE 或工具集成。
  • 支持多进程测试(正在测试死锁和超时)。
  • TUT 是免费的,并且在类似 BSD 的许可证下分发。
  • 测试被组织成命名的测试组。
  • 回归(应用程序中的所有测试),一组或一个测试执行。
  • 纯 C++,没有宏!

2) Catch -- 一个现代的、C++ 原生的、仅标头的、用于单元测试、TDD 和 BDD 的框架

什么是渔获?

Catch 代表标头中的 C++ 自动化测试用例,是 C++ 和 Objective-C(也许还有 C)的多范式自动化测试框架。它完全在一组头文件中实现,但为了更加方便,它被打包为单个头文件。

于 2015-04-18T02:09:09.987 回答