Entries

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Xcodeでコードカバレッジ

タグ: Xcode gcc iPhone

Xcodeのビルド設定をボーっと眺めていたら、ふと「Generate Test Coverage Files」という項目に目がいった。

Coverage……コードカバレッジか。
そういえばXcodeでコードカバレッジを求めたことはまだない。
VS2005TEfSDでは、付属の「vsinstr」「vsperfmon」「vsperfcmd」を駆使してそこそこ見栄えの良い情報を得ることができたが、Xcodeではどうなのだろう。
ざっと調べたところでは、Google codeのcoverstoryを使うのが手軽で良さげだ。
特に使い方に悩むものでもないが、一応手順をメモしておく。

  1. QA1514を参考に、カバレッジ用の構成を作成する(Figure 1の上まで)
  2. カバレッジ用の構成をアクティブにして、UsingCoverstoryにあるAppleScriptを実行する(QA1514のFigure 1から下に相当する設定が行われる)
  3. ターゲット(アプリケーションなりユニットテストなり)をビルドする
  4. ターゲットを起動し、カバレッジを求めたい操作を行ったら終了させる
  5. 「構成ごとの中間ビルドファイルのパス」をcoverstoryで開く

この設定はiPhone Simulator向けのビルドでも有効。
例えば「Window-based Application」を作って特に何も手を加えずビルド・実行・終了してみると

nerver_dealloc.png

このように、アプリケーションデリゲートの「applicationDidFinishLaunching:」は1回だけ呼ばれ、「dealloc」は1度も呼ばれなかったことが分かる。

スポンサーサイト

コメント

コメントの投稿

コメントの投稿
管理者にだけ表示を許可する

トラックバック

トラックバック URL
http://idlysphere.blog66.fc2.com/tb.php/191-ec65c691
この記事にトラックバックする(FC2ブログユーザー)

Appendix

タグ

Blog内検索

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。