[[FrontPage]]

2010/09/21からのアクセス回数 &counter;

#contents

** iPhone SDKのUnitTestは物足りない [#gfe7292b]
** iPhone SDKのUnitTestは中途半端 [#gfe7292b]
iPhone SDKにもUnitTest用のクラスとプロジェクトテンプレートが提供されています。

*** UnitTest バンドルの新規作成 [#l64ea95c]
iPhone用のアプリケーションプロジェクト(ここではCopyTextを使います)に、UnitTestバンドルを追加します。

- 「グループとファイル」からプロジェクト名を選択し、右クリックで「追加」→「新規ターゲット」を選択します
- 「Cocoa Touch」から「Unit Test Bundle」を選択し、「次へ」ボタンを選択
- ターゲット名を入力します(ここではUnitTestsとします)

*** 単体テストクラスを作成 [#f04b24b1]
次に単体テスト用のクラスを作成します。

- プロジェクト名を右クリックで「追加」→「新規グループ」を選択し、グループ名を入力(ここでは「Test Classes」と)します。
-  「Test Classes」を右クリックし、「追加」→「新規クラス」を選択します
-  「Objective-C test case class」を選択し、「次へ」ボタンを選択
- クラス名を入力します(ここではMyTestCase)とし、ターゲットをUnitTestsとします。

今回は、APPLICATION_UNIT_TESTを使わないので、MyTestCase.hのdefine文を変更します。

#pre{{
#define USE_APPLICATION_UNIT_TEST 0
}}

*** 単体テストの実行 [#f4c3278b]
単体テストの実行は、
- ターゲットを「UnitTests」を選択
- 「実行」メニューから「ビルド」を選択します

単体テストに失敗すると「CopyTest-ビルド結果」のウィンドウにエラーが表示されるのですが、
正常終了の場合は、Build Succeededとしか出力されません。

「何となく」物足りないのと、エラーが発生した場合デバッグすることができないのが、
私が「中途半端」と感じるところです。

試しにtestMathの1+1を1+2に変更し、ビルドして見てください。

&ref(failed.png);

のようなエラーが「スクリプト実行」の結果として表示されます。
残念ながらこのままではtestMathをデバッグできません。


** コメント [#u2ca1c96]
この記事は、

#vote(おもしろかった[0],そうでもない[0],わかりずらい[0])

皆様のご意見、ご希望をお待ちしております。

#comment_kcaptcha


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
SmartDoc