<分区>
我正在评估哪种测试框架最适合我。
在这三个选项中选择:google test
、boost.test
和 catch
。
我想要一些健壮的东西,它没有那么多依赖性,并且能够在需要时支持 C++14/C++17。
还有一个问题,你知道航电/航天领域的大公司用的是什么框架吗?
<分区>
我正在评估哪种测试框架最适合我。
在这三个选项中选择:google test
、boost.test
和 catch
。
我想要一些健壮的东西,它没有那么多依赖性,并且能够在需要时支持 C++14/C++17。
还有一个问题,你知道航电/航天领域的大公司用的是什么框架吗?
最佳答案
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 上工作得很好,我个人使用它。从链接的文档中,您可以看到它不依赖于外部库(请参阅要求部分)。
Catch已知限制提及:
our desire to support C++98 compilers
它在 C++14 上工作得很好,我个人在工作中的几个项目中使用过它。 Catch 是一个只有头文件的库,它完全没有依赖性。
Boost C++ 库通常执行编译时检测编译器对标准的支持,并根据结果启用/禁用功能。
根据经验,这些库通常依赖于从 Boost 本身获取的一些其他库。
do you know which framework big companies in the avionics/space fields use?
通常他们不仅需要编写测试,还需要进行代码覆盖率估计。有很多专业工具,其中很少有免费的,而且(至少,据我所知)不存在事实上的标准。
关于c++ - google test/mock vs boost vs catch 对 c++14/c++17 的支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42621549/