C中的跨平台单元测试

时间:2009-03-01 12:56:14

标签: c unit-testing cross-platform

我正在开始一个新项目并决定我应该给这个单元测试的东西,每个人都在谈论一个尝试。

该项目是一组C库(因此不需要进行UI或用户交互测试),旨在实现跨平台,Linux,FreeBSD和Windows是我的首要任务,OS X计划在第一个版本发布之后门(假设我可以抓住运行OS X的机器进行测试)。

是否有人对可以在多个平台上轻松运行的优秀C单元测试框架有任何经验或建议?

5 个答案:

答案 0 :(得分:2)

当我编写C代码时,我所有的单元测试都是临时的,没有涉及框架,所以我不推荐任何这些,但你可能想看一下C / C ++单元测试工具列表在http://www.opensourcetesting.org/unit_c.php

答案 1 :(得分:2)

我曾经使用过我喜欢的CUnit。谷歌也开放了他们的C++ unit testing framework

答案 2 :(得分:2)

我从minunit开始,然后根据我的要求进行演变。我只是使用make来构建和运行不同的可执行文件,每个文件都包含十几个相关的测试,而不是从测试框架中获得对测试套件的支持。所以现在我有大约250行宏,主要用于打印不同类型或进行字符串或内存比较,这就足够了。

答案 3 :(得分:1)

我已经变得非常偏向tap(靠近底部向下滚动),因为它很容易掉落到位。它代表“测试任何协议”。如果使用过去5年发布的编译器,我不认为你会遇到许多可移植性问题,但我只是用gcc / glibc尝试过。

答案 4 :(得分:0)

我使用自己的单元测试框架CUnitWin32来嵌入C语言。我的主机开发环境是Win32,因此可在线获得的框架仅适用于Windows。但是,我确实将它移植到Linux,所以如果框架适合你,请在这里给我发表评论,我们将找到一种方法来获得Linux版本。

d