Why can’t code inside unit tests find bundle resources?

Some code I am unit testing needs to load a resource file. It contains the following line:

NSString *path = [[NSBundle mainBundle] pathForResource:@"foo" ofType:@"txt"];

In the app it runs just fine, but when run by the unit testing framework pathForResource: returns nil, meaning it could not locate foo.txt.

I’ve made sure that foo.txt is included in the Copy Bundle Resources build phase of the unit test target, so why can’t it find the file?

6 Answers
6

Leave a Comment