2

有没有人在需要交叉编译的嵌入式设备中使用 check 作为单元测试框架?

这甚至是一个好主意,还是我应该只使用其他东西(例如 embunit 或类似的东西)?

如果是这样,我应该如何编写 Makefile.ams 和 configure.ac?我一开始没有使用过自动工具,所以所有这些交叉编译的东西肯定无济于事......

我可以简单地跳过所有实际的配置检查,因为我只在一个或两个环境中编译,但我需要编译检查到目标吗?我无法从说明中了解如何将实际框架链接到我的测试代码。

我需要的最小文件是什么?这些示例完成了所有配置工作,但我不知道我可以遗漏什么。

4

1 回答 1

1

据我所见,“检查”使用 fork() 系统调用。当您没有在嵌入式目标上使用基于 UNIX 的操作系统时,您将在这里遇到问题。在第 2.1 章的检查手册页上,您会发现替代单元测试框架的一个很好的概述。大多数框架依赖于一些操作系统调用或一些标准库函数,这些函数可能不存在于您的嵌入式目标上。

我发现宏表达式单元测试框架 MAESTRA 在嵌入式平台上非常有用。几年前在 embedded.com 上有一篇有趣的文章:Doing C code unit testing on a shoestring

但是,如果您要处理大量第三方代码或现有的代码库 MAESTRA 可能不是最佳选择,因为它强制执行特殊的编码标准以使代码检测正常工作。这也可能与您公司自己的编码标准发生冲突。

于 2010-10-19T19:37:00.107 回答