1

単体テストを自動的に実行するときにログを無効にして、テスト速度を大幅に向上させる必要があります(〜20秒対0.374秒、現在は数個のテストのみですが、テストコードに大きなループがあります)。

次のように、テストコードヘッダーでマクロを定義しようとしました。

#define UNIT_TESTING

そして、テストするコードで、最初にそのようなマクロが定義されているかどうかを確認します。

#ifndef UNIT_TESTING
NSLog("whatever log");
#endif

しかし、それは機能していないようです。テストするコードにテストコードヘッダーをインポートしなかったためだと思います。単体テストを行わなくてもログが印刷されないため、これを行うことはできません。

私はObjectiveCに比較的慣れておらず、Javaのバックグラウンドから来ました。ヘッダー/マクロの定義に何か問題があると思います。

もう1つの質問は、単体テスト用のマクロを定義する必要があるかどうかです。そのようなものはすでにありませんか?

4

1 に答える 1

1

UNIT_TESTING単体テストターゲットのビルド設定で定義する必要があります。

左側のペインでプロジェクトを選択し、次に単体テストのターゲットを選択してから、[ビルド設定]->[すべて]->[プリプロセッサマクロ]を選択します。

于 2012-07-20T06:14:22.953 に答える