我试着跟随official Check tutorial,但是它需要Autotools的工作知识,而我没有。我希望只是写几个快速测试,我发现这个教程让人不知所措。它依赖于Autoconf、Automake和一些Check宏中的很多魔法。它没有解释Check实际上是如何工作的,这样我就可以手工构建测试。
如何使用“不使用Autotools的检查”?
我试着跟随official Check tutorial,但是它需要Autotools的工作知识,而我没有。我希望只是写几个快速测试,我发现这个教程让人不知所措。它依赖于Autoconf、Automake和一些Check宏中的很多魔法。它没有解释Check实际上是如何工作的,这样我就可以手工构建测试。
如何使用“不使用Autotools的检查”?
2条答案
按热度按时间lokaqttq1#
在小项目中使用Check当然不需要学习autotools,假设main()在main. c中,而implementation. c有一个对2个int求和的函数(implementation. h只包含函数原型)。
你可以这样写一个测试:
将文件保存在implementation-test.check中(你可以选择任何你想要的名称/扩展名,但是如果你想按照我的指导来做,就使用这些名称/扩展名),然后运行随Check提供的awk脚本,你甚至不需要为check框架的样板代码费心!(更多细节请参考mancheckmk)
输出结果如下:
然后在编译时包含-lcheck,以获得链接的检查库并运行程序!
下面是一个简单的makefile,可以帮助你开始使用它。将它保存在sum2ints.makefile中,然后运行以下命令来构建implementation. c沿着main:
要使用从checkmk创建的implementation-test. c构建并运行implementation. c,请运行:
我已经为您准备了一个.zip文件,其中包含上述所有内容。
https://dl.dropbox.com/u/1987095/test-check.zip
bvjxkvbb2#
@freestyler的答案很好,但它仍然使用
checkmk
,这是没有必要的。这是不使用
checkmk
的最小示例。将以下内容放入名为
test.c
的文件中:并编译