在被介绍到Ruby编程的概念后,我最近开始喜欢单元测试了。我知道在Xcode中有一个首选项,“包含单元测试”,所以我尝试了一下。首先,很难找到框架的文档,其次,向Foundation命令行工具添加单元测试很麻烦。所有这些都是独立的计划和目标等等。
这让我开始思考如何编写一个极小且易于包含的单元测试框架,主要用于教育目的。
我的想法是,您应该编写一个启动和清理方法,以及从test开始的方法。然后我会写5-6个断言函数。(像大多数框架一样)然后在main()中,你可以这样说:
[MyAppTests test];
或者类似的东西。然后运行所有测试方法并记录错误或成功。然后我就可以在未来的基础上继续发展。
我的问题是,如何实现使用Foundation和C标准库在Objective-C中运行以测试开头的所有方法?对于这样的东西,什么是最优/最小的设计?
发布于 2011-12-03 02:24:13
使用Objective-C运行时参考了解如何获取方法名列表。然后,您可以过滤掉设置和清理方法,或者只包含以"test“开头的方法。我非常确定这就是内置SenTest框架在内部所做的事情。
http://developer.apple.com/library/mac/#documentation/cocoa/Reference/ObjCRuntimeRef/Reference/reference.html
当我经常使用像这样的C函数时,我通常更喜欢将它们包装在一个实用程序类中,或者在适当的情况下,包装在一个类别中。
https://stackoverflow.com/questions/8360754
复制相似问题