Archive for February, 2011

Apple’s iPhone Unit Tests Less that Stellar

February 9, 2011

It’s Like jUnit, but even less intuitive.    It’s as if a first year intern was in charge of integrating OCTest into XCode.    It sucks because:

1) It showed up late.   WAY LATE.   What percentage of app store apps actually have unit tests, since most were out before Unit Testing was available?

2) It uses a Shell script during the build process to call it’s executable code.  That’s Hacky.

3) No stepping through the test Code because of 2.

4) Build Output requires 2 keystrokes and 2 clicks to get to because of 2.

5) Crashes in Test don’t give you a stack trace because of 2.

6) Build = Run.   Huh?    Yes clicking build does not just compile, but also RUNS the code in the test.   Very intuitive. NOT.

7) Build Errors do not stop said shell script from being run. Perhaps had they not hijacked the Build phase, this wouldn’t be an issue but they did.

8) Default instructions Say nothing about linking requirements, to an existing project.   They just have useless asserts on Foundation methods. (Conveniently already Linked.)   Methinks they’re using the Google Framework internally, but can’t redistribute that for obvious reasons.  (Like admitting that testing was an after thought.)

9)  Perhaps it’s time to checkout Google’s Test Toolkit.     Could it suck more?   Probably not.

10) Test rig ‘${TEST_RIG}’ exited abnormally with code ${TEST_RIG_RESULT} (it may have crashed).   how about telling me WHERE it crashed?

How can Apple be so considerate of the user and so inconsiderate of the developer?    They should license VSTFS.  Developer Environments is about the only thing that Microsoft gets right.