【发布时间】:2013-02-09 07:15:25
【问题描述】:
我正在开发一个程序 C/C++ 项目。公共接口由 4 个函数组成,每个函数都有相当复杂的任务。在同一个 cpp 文件中声明了一些辅助函数,位于未命名的命名空间中。使用的测试框架是 GTest。
但是,其中一些辅助函数变得复杂到需要自己进行单元测试。通常,我会将这些帮助程序重构为它们自己的可测试单元,但项目要求声明所有内容都需要在一个 cpp 中,并且只有指定的函数可以公开可见。
有没有一种方法可以对辅助函数进行单元测试,同时最大限度地减少耦合,并尽可能地遵循项目要求?
我有一个可能的解决方案是使用宏将命名空间变成命名空间用于测试,而未命名用于生产。但是,这似乎比我想的要混乱一些。
【问题讨论】:
标签: c++ unit-testing googletest