テストコードのときのみ実行したいコードってありますよね?例えばサーバーのURLを変えたり、テスト用のデータを用意したりいろいろな用途があり得そうです。
シンプルにやるにはプリプロセッサマクロを使ってこんな風にやるのがよさそうです。
- (void)method
{
#ifdef TESTING
[self hogehoge];
#endif
}
ではどうやって実現するか、順を追って説明します。
Configurationを新しく作る
Xcodeのプロジェクトの設定画面のinfoからConfigurationsを新しく作ります。
+ボタンをクリックし、Duplicate “Debug” Configuration
を選び名前をTesting
などとします(テスト用の設定なのでDebugから複製すれば良いでしょう)。
;
プリプロセッサマクロを追加する
同じく設定画面からBuild Settingsのタブを開いてマクロを追加します。右上のウィンドウで絞り込みをすると楽。
Testing設定にTESTING=1
というプリプロセッサマクロを追加します。
Edit Schemeする(何て呼べばいいの?)
これで最後です。Edit Scheme
して、テスト時のConfigurationを先ほど作ったTesting
に変えます。
まずはEdit Scheme
の画面を開き、、、
左側の項目からTestを選んで、Build Configuration
をTesting
に変更します。
これで、最初に例示したようなコードが動くようになりました。