在 Windows 上使用哪个单元测试框架进行 C 开发? [关闭]
Posted
技术标签:
【中文标题】在 Windows 上使用哪个单元测试框架进行 C 开发? [关闭]【英文标题】:Which unit testing framework to use for C development on Windows? [closed] 【发布时间】:2010-12-17 23:03:30 【问题描述】:在 Windows XP 上,使用 TDM's GCC/MinGW32 进行基本开发,即带有 gdb 的 gcc 4.4.x。哪个单元测试框架用于测试驱动开发?
显然Check 的单元测试还不能在 Windows 上运行。
Unit Testing Frameworks for C 和 Unit Testing C Code 的问题类似,但不是专门针对在 Windows 上使用 gcc 4.4.x。
【问题讨论】:
pragprog.com/book/jgade/test-driven-development-for-embedded-c 【参考方案1】:Cut 是我所知道的唯一可以在 Windows 上运行的 C 单元测试框架。 Check 确实可以通过 Cygwin 在 Windows 上运行(这是我目前正在使用的)。
【讨论】:
【参考方案2】:Awesome slides 来自关于 TDD 与 C 的谈话,只使用 C99 标准的东西。
我个人喜欢glib 中的东西,你可以在MinGW 中使用。
【讨论】:
幻灯片+1,真的很棒。 这是非常小的项目的绝佳解决方案。我还在考虑如何扩展它。【参考方案3】:minunit 只有四个宏,所以它可以在任何平台上编译。它功能不全,但可以完成工作,并且可以轻松扩展以满足您的需求。
【讨论】:
【参考方案4】:从 0.9.11 版开始,check 支持 MinGW 和 Cygwin 平台上的 Windows。
由于 MinGW 平台没有等效的 fork(),因此无法使用 fork() 模式进行检查。但是,Cygwin 确实提供了一个 fork() 实现供检查使用。
【讨论】:
【参考方案5】:看看 cmocka,一个支持模拟对象的 C 单元测试框架。它在 Windows 上经过测试和支持。
https://cmocka.org
【讨论】:
【参考方案6】:我个人喜欢cfix,它不仅针对Windows C开发者,还支持用户模式和内核模式代码。
【讨论】:
以上是关于在 Windows 上使用哪个单元测试框架进行 C 开发? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
C语言单元测试框架——CUnit 安装(windows和Linux)及使用