google test/mock vs boost vs catch 对 c++14/c++17 的支持

google test/mock vs boost vs catch support for c++14/c++17

我正在评估哪种测试框架最适合我。 选择在这三个中:google testboost.testcatch.

我想要一个健壮的东西,它没有那么多依赖项,并且能够在需要时支持 C++14/C++17。

另外一个问题,你知道avionics/space领域的大公司用的是哪些框架吗?

I would like something robust that has not so many dependencies and that is able to support c++14/c++17 if needed.

Google C++ test framework 要求提及:

A C++98-standard-compliant compiler

它在 C++14 上工作得很好,我个人使用它。从链接的文档中,您可以看到它不依赖于外部库(请参阅 requirements 部分)。

Catch 已知限制提及:

our desire to support C++98 compilers

它在 C++14 上工作得很好,我个人在工作中的几个项目中使用过它。 Catch 是一个只有头文件的库,它完全没有依赖关系。

Boost C++ 库通常执行编译时检测编译器对标准和功能的支持,具体取决于结果enabled/disabled。
根据经验,这些库通常依赖于从 Boost 本身获取的一些其他库。

do you know which framework big companies in the avionics/space fields use?

通常他们不仅需要编写测试,还需要进行代码覆盖率估计。有很多专业工具,其中很少有免费的,而且(至少,据我所知)不存在事实上的标准。