我正在维护多年前用 C 编写的服务器应用程序。它的单元测试 (cxxtest) 很少,我正在考虑开发更多。
最近几天我阅读了有关单元测试 C 程序的主题,并尝试了一些东西。正确的做法似乎是包含包含要从我的测试套件进行测试的函数的 .c 文件。但是,由于该 .c 文件包含许多调用许多其他函数的函数,因此在开始实际工作之前我必须处理许多依赖项。
我想做的是“关闭”我对特定测试不感兴趣的所有功能。我会 stub 那些被我的测试函数调用的。如果需要的话,我正在考虑将 ifdef 放在我的函数周围。
是否有更好的解决方案或框架来解决这个问题?
最佳答案
编写可靠的单元测试的先决条件是能够独立测试代码。即,在不涉及任何其他逻辑的情况下调用此方法。听起来您可能需要进行一些重构以删除提到的依赖项才能完成此操作。
至于 C 的单元测试框架,请在此处查看类似的讨论:Unit Testing C Code
关于c - 用 C 编写的单元测试遗留程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3268147/