One of the themes of my C4 unit testing talk was that unit testing isn’t as prominent in the Cocoa development community as it is in others, such as Java and Ruby. After I gave my presentation, I was able to talk to other people about unit testing and their experiences with it. I was pleased to hear that a lot of people are doing unit testing and want to do more of it.

Unfortunately, a lot of the discussions also revolved around “I’d like to start, but I just have a hard time getting going with Xcode” or some other Xcode or OCUnit limitation that got in their way. While I am grateful for Xcode’s unit testing integration, coming from IntelliJ’s IDEA for Java, which had great testing integration, it does leave a lot to be desired.

Putting my money where my mouth is, I’ve recently opened up a bunch of bugs about improving unit testing in Xcode:

  • rdar://7215100 Unit tests should be debuggable with no manual configuration
  • rdar://7333513 ER: Automatically set build settings when adding a dependent unit test bundle
  • rdar://7333519 ER: Automatically create a unit test target when creating an target
  • rdar://7333525 ER: Re-release OCUnit as open source
  • rdar://7333564 ER: Add an executable for a unit test target instead of a run script phase
  • rdar://7333580 ER: Make creating custom OCUnit assertions easier
  • rdar://7333600 ER: Allow running of subset of tests
  • rdar://7333645 ER: Don’t start NSApplication when injecting tests into a dependent target

Please file duplicates or your own enhancement requests, if you have specific ideas, to let the Xcode team we want better unit testing.