SenTestユニットテストが失敗する

EXC_BAD_ACCESSが取れて、メモリリークも取れて、KVOの警告も消えて「さあテストだ!」と勢いを付けたのだが、テストを実行すると...

2012-05-30 20:17:01.610 HogeApp[983:fb03] *** Assertion failure in
-[SenTestClassEnumerator init],
/SourceCache/OCUnit_Sim/OCUnit-2519/SourceCode/SenTestingKit/SenTestClassEnumerator.m:136
2012-05-30 20:19:31.253 HogeApp[983:fb03] [***ERROR***] Stack trace:
(0x1445022 0x15d6cd6 0x13eda48 0xa262cb 0x20108a8f 0x201087c9
0x20108528 0x20106edc 0x20107458 0x20107112 0x201070bf 0x20107078
0x201059cb 0x20105e85 0x9b585d 0x1419936 0x14193d7 0x137c790 0x137bd84
0x137bc9b 0x132e7d8 0x132e88a 0x8f626 0x21cd 0x2135)
2012-05-30 20:19:31.253 HogeApp[983:fb03] *** Terminating app due to
uncaught exception 'NSInternalInconsistencyException', reason:
'objc_getClassList returned more classes than it should have.'
*** First throw call stack:
(0x1445022 0x15d6cd6 0x13eda48 0xa262cb 0x20108a8f 0x201087c9
0x20108528 0x20106edc 0x20107458 0x20107112 0x201070bf 0x20107078
0x201059cb 0x20105e85 0x9b585d 0x1419936 0x14193d7 0x137c790 0x137bd84
0x137bc9b 0x132e7d8 0x132e88a 0x8f626 0x21cd 0x2135)
terminate called throwing an exception

どうやらGDBでZombie検出をしていた頃のオプションがまずかったようで、以下の引数を全てOffにした所、エラーは消えた。

※実際にはNSZombieEnabledだけをOffにすれば良いはず。

LLDBデバッガではGDBで使えたmalloc_history等が使えないのでGDBに変えていたのが仇となったようだ。

しかし..こういうのが続くと考えると実際にアプリケーションの開発に入るのが怖くなってくるな。