视频参考:Google C++ Testing GTest GMock Framework

为什么要使用 Google C++ Testing Framework?

使用这个框架有许多好理由。本文讨论其中几个。

某些类型的测试有糟糕的内存问题,这些问题只在某几次运行期间出现。Google 的测试框架为处理这种情况提供了出色的支持。可以使用 Google 框架重复运行相同的测试一千次。当出现故障的迹象时,自动地调用调试器。另外,这只需要在命令行上传递两个开关即可实现:--gtest_repeat=1000 --gtest_break_on_failure

与其他许多测试框架相反,可以把 Google 测试框架内置的断言部署在禁用了异常处理(通常由于性能原因)的软件中。因此,也可以在析构函数中安全地使用断言。

运行测试很简单。只需调用预定义的 RUN_ALL_TESTS 宏,而不需要通过创建或驱动单独的运行器类来执行测试。这比 CppUnit 等框架方便多了。

只需传递一个开关即可生成 Extensible Markup Language (XML) 报告: --gtest_output="xml:<file name>"。在 CppUnit 和 CppTest 等框架中,需要编写很多代码才能生成 XML 输出。

创建基本测试

以下代码均在Linux下运行。也可以利用VS2017 cross platform feature 在Windows本地进行Gtest测试。

sample.h

#ifndef _SAMPLE_H_
#define _SAMPLE_H_

// Returns n! (the factorial of n).  For negative n, n! is defined to be 1.
int Factorial(int n);

// Returns true iff n is a prime number.
bool IsPrime(int n);

#endif
View Code

相关文章:

  • 2022-12-23
  • 2022-01-09
  • 2022-02-06
  • 2021-05-30
  • 2021-11-12
  • 2022-01-01
  • 2022-12-23
  • 2022-01-08
猜你喜欢
  • 2021-12-20
  • 2022-01-14
  • 2021-09-27
  • 2022-12-23
  • 2021-03-31
  • 2021-04-09
  • 2021-12-16
相关资源
相似解决方案