Xcode4でのユニットテストもGHUnitが良い

Xcode3まではGHUnitを利用していたが、Xcode4でユニットテストの実行が簡単になって、IDEでのサポートも増し、今回担当したプロジェクトでは新規でのXcode4での作業だったということもあり、下記の理由で標準のSenTestingKitを使ってみた。

  • プロジェクトを作成する時に自動的にユニットテストが組み込める
  • Command+Uですぐに実行できる
  • 実行結果がわかりやすくなった
  • 標準でデバッガを利用したデバッグが出来るようになった

使ってみたところ、IDEでのサポートが増したおかげで、ユニットテストが行いやすくなったのは実感できた。しかしいくつか不満がある。

  • 実行結果がオールグリーンの場合は何も表示されない
  • 非同期機能のテストが標準で行えない
  • アサーションの種類が少ない

といった点だ。どれもユニットテスにとって重要な点だ。

テストに失敗すると失敗個所が表示されるので良いのだが、すべて成功すると成功とは表示してくれない。いつ終了したのかも分かりにくい。ユニットテストっていうのはオールグリーンを確認することが重要だと気付いた。

今回のプロジェクトではNSURLConnectionを使用するような非同期機能は無かったので非同期機能のテストは行わなかったが、今後予定しているプロジェクトでは、SenTestingKitは標準では非同期テストが行えないので、GHUnitを利用して非同期機能のテストを行うことが必要となる。

アサーションの種類が多い方がテストを記述しやすく、分かりやすさも向上する。

結局のところ組み込みはプロジェクト作成時に一度行うだけで良いし、Command+Uでの実行もテストを行う時にターゲットを切り替えてテストを集中的に行えばいいので、GHUnitを使っていく方が良いという判断になった。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です