GHUnitのめも
GHUnitでiOSアプリケーションのテストを書こうと思い、その時のφ(`д´)メモメモ...

環境
インストール
公式の通りに進めたらできました(^o^)
ただし、gemとCocoapodsが必要
- gemでGHUnitをインストール
sudo gem install ghunit
- プロジェクトのディレクトリに移動する
.xcodeprojが存在するディレクトリ
cd $PROJECT_DIR
- Testターゲットをプロジェクトに追加
- -nにはプロジェクト名を渡す
ghunit install -n test
- PodfileにGHUnitを追加
platform :ios, '6.0' target :Tests do pod 'GHUnit', '~> 0.5.9' end
- GHUnitをプロジェクトに追加
pod install
.xcworkspaceを開く- すると、ターゲットに
Testsが追加されてる!
- すると、ターゲットに

実行
実行するターゲットを
Testsに切り替える- 左上の停止ボタンのとなりにあるやつ
実行する!
- Product -> Run

今回はiOSシミュレータで実行してみた
右上のRunをタッチすると、テストが実行される
ここまで、インストールと起動は何事もなく終えることができたんですが、 自分で作成したクラスをテストしようとするとビルドエラーがでる(-_-;)
どうやらターゲット毎にコンパイルするソースを指定しないと行けないらしい。。。
方法1
- プロジェクトの設定画面 >
Testsターゲットを選択 >Build Phasesタブを選択 >Compile Sourceを選択 Testsターゲット内でコンパイルしたいソースを追加する
方法2
- テスト対象のソースを選択 >
File Inspector>Target Membership>Testsターゲットにチェックを入れる- この方法だと
.mファイルしかチェックを入れることができない
- この方法だと
.mファイルを参照できるんだったら、ヘッダファイルもimportされるから.hはチェック入れる必要なくね?ってことなんですかね(-_-;) 方法1の場合だと.hもコンパイルの対象に含めることができたんですが、違いは何なんだろう。。。
ちなみに、方法1と方法2でターゲットのコンパイル対象に含める操作は、
同期されてるようでどちらかの方法で追加した場合はCompile SourceとTarget Membershipに追加され、
どちらかの方法で削除した場合は、コンパイル対象から外されてた
別ターゲットの全ファイルをコンパイル対象にする、 ターゲットの設定が有りそうなものだけどわからない。。。