转载自:iOS单元测试中使用资源
在编写iOS的测试用例时,我们经常会要用到一些图片、音频、视频等文件来进行测试。如果这些文件是打包到工程里并且是在单元测试的target里的话,用法跟普通的资源会稍微不一样。
平时我们要用应用程序中的资源文件时会用[NSBundle mainBundle]来获取资源文件,但是在test的target中,利用这个方法是无法获得资源文件的。这是因为test target跟应用程序的app不是在一个bundle中,而mainBundle指的是应用程序的bundle,而不是test的。所以我们要换另一种方式:
NSBundle *bundle = [NSBundlebundleForClass:[selfclass]];
通过这个我们来获取test的bundle,这样我们不需要加用来测试的资源文件放到应用程序中,只需要放到test的target中即可,既可以满足我们的测试要求,又不会增加应用程序的大小。
网友评论