我是一名专业的网页开发人员,因此我习惯于使用非常高级的脚本语言和测试工具。我个人最近一直在与C一起工作,并为基于Unix的系统编写许多C程序来完成各种任务。然而,我仍然没有进入单元测试这个代码的良好沟槽,我想知道C程序员使用什么工具来创建自动化测试来验证代码。你用什么来单元测试C代码?
6
A
回答
1
您是严格测试C代码,还是可以混入一些C++?如果C++没问题,cppunit可能值得检查。如果你正在测试一个库,你可以简单地将你的库链接到你的单元测试应用程序。如果您正在测试应用程序,则可能必须创建一个库,然后将其链接到您的应用程序和单元测试应用程序。
1
我有这个问题一次,发现CUnit。我只用它来做一个小项目,但看起来没问题。几乎不像我习惯的JUnit或NUnit一样方便!对于C++项目,我使用cppunit,它工作得很好。
1
CUtest。它非常整齐。小,不依赖于生成器语言,快...不喜欢什么?
0
如果你只想要一个quick'n'dirty测试机制,看看ANSI C的
1
1
我作为开发工作,我喜欢使用CMocka工具为C语言提供了单元测试。 它是基于GTest的简单工具(主要是C++单元测试),它非常容易理解。 前段时间我做了最好的和最简单的测试工具的研究,并决定这一点。
经过一段时间的工作,我非常有信心。使用预处理指令
#define MyFunction(iEntry) mock_MyFunction(iEntry)
你也可以切断要模拟的任何功能(甚至基本的Windows功能与sizeof(),malloc()和等)。
完成这一步之后,您只需创建您的模拟函数(mock_MyFunction(iEntry)),将它们包含到您的项目中并模拟它们的行为。首选的方法是在调用它们应返回之前设置它们的一些值(will_return_always(mock_MyFunction,5))。并且,当调用此函数时,它将始终返回值5.
此外,您完全可以避免使用C++语言并继续使用纯C语言。 不知道CMocka的简单索引网站。你必须深入该网站和工具API找到你需要的.. :) 还检查this为使用CMocka的小教程...
我希望这可以帮助,有一个愉快的一天..:-)
相关问题
- 1. 你用什么来测试你的C++代码?
- 2. 你用单元测试测试什么?
- 3. javascript单元测试:你如何跟踪你写的所有测试和你有什么代码覆盖?
- 4. C#单元测试代码问题
- 5. 单元测试旧版C#代码
- 6. 单元测试C生成python代码
- 7. 单元测试程序C代码
- 8. C#单元测试不进入代码
- 9. 单元测试ASP.NET代码
- 10. 单元测试代码。ContinueWith(
- 11. 你会用什么样的测试来测试这
- 12. 你可以用这些代码做什么样的JUnit测试?
- 13. 你怎么能单元测试DelegateCommand
- 14. 你用什么.NET语言编写单元测试?
- 15. 你用什么工具来调试的Android NDK的代码?
- 16. 使用依赖注入系统你如何单元测试你的代码
- 17. 单元测试遗留代码 - 重构什么来适应Rhino Mocks上下文?
- 18. 单元测试专用代码
- 19. 使用Modernizr的单元测试代码
- 20. 如何用cin单元测试代码?
- 21. 单元测试/集成测试GXT代码的最佳方法是什么?
- 22. 你用什么来测试你的浏览器扩展/ BHO?
- 23. 你用什么(免费)来格式化C#代码?
- 24. 你如何构建交叉编译代码的单元测试?
- 25. 你对非生产代码进行单元测试吗?
- 26. 单元测试中的单步测试和调试代码
- 27. 单元测试 - 不可测试代码转换为可测试代码
- 28. 如何使用asp.net mvc和单元测试来组织代码和测试
- 29. 单元测试并发软件 - 你做什么?
- 30. 为什么你需要单元测试基本的SQL功能?
另请参阅此问题:http://stackoverflow.com/questions/65820/unit-testing-c-code。 – MattK 2009-01-29 22:27:09
这是我一直在寻找的问题,但搜索并没有真正找到它。谢谢! – Mitchell 2009-01-29 22:40:55