iOS UIオートメーションのために今までKIF Frameworkを使っていました。 KIF(Unit Test)ターゲットは、アプリケーションが実行されているのと同じプロセスでUnit/UIテストコードを実行し、モックデータを表示するためにアプリケーションが使用するさまざまなオブジェクト/クラスを簡単にモックできます。 Xcode 7のUIオートメーションを使ったモックオブジェクト
Xcodeの7ベースの新しいUIオートメーションへの切り替え、私はUIユニットテストターゲットが別のプロセスで実行され、それが別のプロセスでアプリケーションを起動することがわかりました。したがって、単体テストを介してAppクラスやオブジェクトにアクセスしたり、それらをモックすることはできません。は、誰もが同じ問題に直面して、任意の回避策を知ってましたか?
詳細が必要な場合は教えてください。
回答:以下の詳細な回答をご覧ください。また、ここでは、アップルの開発者から返信するためのリンクです:https://forums.developer.apple.com/thread/23552
ああ、うわー!これは、依存性注入のアイデア全体を破ります。私は間違いなく私の生産コードにテストコードを導入したくありません。これは本当にショーストッパーです。 – user1366265
@ user1366265上記のコンパイラ指令のすべてをラップすると、プロダクションバイナリにそのようなコードを技術的に導入することはできません(コンパイラフラグが正しく設定されていることが前提です)。それを言っても、間違っているのは明らかに理想的ではなく簡単です。 –