iosxcode4ocunit

How to run OCUnit logic tests automatically before each build (run) of iOS app in Xcode 4?


It seems that I have everything set up correctly. When I run command ⌘ + U (or select Product > Test from menu) my test runs fine.

Best practices should be that test are run as often as possible, ideally during each build (understand during each run).

How do I force Xcode 4 to do it? I have tried to:

but nothing seems to work. Does anyone have success setting up this?


Solution

  • Finally figured it out, though still not perfect:

    1. On your test target make sure set "Test after build" to yes.
    2. On your main app scheme - build - under "run" tick also test bundle.

    This makes your test target build when running the app. Thanks to "Test after build" also the tests run. If everything is ok, app starts in sim. If there are any failing tests, you get a crash, if you use STAssert. In case of OCMock, you can check what exactly went wrong in log inspector.

    Sometimes breakpoints do not work. To get them working try product - perform action - test without building.