c++ - 使用 C 单元测试框架测试嵌入式 C++ 代码的局限性

标签 c++ c unit-testing testing

我想尝试使用单元测试框架来测试我用 C、C++ 或 IEC 语言编写的代码。

所以我的问题是 - 使用 C 编写的单元测试框架来测试 C++ 代码是否有一些很大的限制会限制我使用它?


背景信息: 我尝试了多种可用的开源框架——它们是用 C/C++ 编写的。最后我得出结论,用 C 编写的“嵌入式单元”和用 C++ 编写的“CppTest”是候选者(主要是因为测试必须在嵌入式平台上执行)。但在选择获胜者之前,我陷入了这个非常基本的问题。据我所知,我没有发现很大的局限性。 除了:在 C++ 单元测试框架中:我可以让 testClass 成为可测试类的 friend 并测试它的私有(private)属性/函数(这对我来说并不重要)。抱歉,如果这是一个愚蠢的问题 - 我刚刚开始探索测试世界。

最佳答案

一个例子是,您将被迫使用严格的 C 框架测试被测代码生成的预期 C++ 异常。我确信这种方法还有其他漏洞,但这取决于您的 C++ 代码。

除非您有充分的理由,否则 CppTest 似乎是两位候选人的合乎逻辑的选择。我已在评论中链接到一个可能涵盖您错过的选项的问题。

关于c++ - 使用 C 单元测试框架测试嵌入式 C++ 代码的局限性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15115584/

相关文章:

c++ - 如何声明一个类显式抽象?

c++ - 指向字符数组的指针 C++

c++ - 在不使用 C++ 中的虚函数的情况下从模板派生类访问方法?

C - 缓冲区溢出问题

c - 调用 pthread_cond_signal(...) 然后调用 pthread_cond_wait(...) 会唤醒服务员吗?

c# - 如何对采用对象数组并在 ASP.Net MVC 中返回 JsonResult 的 Action 方法进行单元测试

c++ - STL <list> 正确生成和删除项目

c - union 中 float 的内存分配

java - 如何使用 Mockito 模拟方法调用

c - 单元测试 C 库,内存管理