Cocoa development and testing
I’m not sure why, but the Cocoa development community doesn’t seem to be into unit testing. Or perhaps, I’m misreading the community and it’s mainly Apple that doesn’t push unit testing hard enough.
It wasn’t until recently that Xcode even had unit test support, sure, you could use 3rd party frameworks, but it wasn’t built in. It’s unacceptable for testing not to be a high priority, and I’m not sure why Apple waited so long to bake it in. Even now you have to jump through hoops to get the debugger working with unit tests. From my personal experience as an intern at Apple, both teams I was on did not make significant use of automated tests while developing. Sure, there were QA teams, but unit tests weren’t present. Apple just doesn’t get unit testing (thankfully there are a few on the inside who are test infected, like Chris Hanson, who as a member of the Xcode team is probably responsibly for the unit test support in Xcode).
Xcode now has support for unit tests, and Apple did put out a guide on unit testing. So the situation is getting better, but not ideal. In comparison, the Java community really gets testing, and has a whole host of useful tools (Java does have many other problems, but at least testing isn’t one of them). Tools like test coverage analyzers and mock object frameworks. These tools should be included with Xcode by default.
Maybe the next version of the dev tools will include OCMock, and GUI support for GConv. Or has the situation gotten better and I haven’t noticed?