4

iOS開発ガイド:ユニットテストアプリケーションをフォローしています。ただし、LogicTestsターゲットをビルド(Command + B)しようとすると(「ロジックテストの設定」のステップ8)、「選択した実行先はこのアクションに対して無効です」というエラーが表示されます。

アプリケーションターゲットをのターゲット依存関係に追加したのでLogicTests、Command + Uを使用して単体テストを実行できますが、これによりiPhoneシミュレーターも起動します。

時間とリソースを節約するために、iPhoneシミュレーターを起動せずにOCUnitテスト(ロジックテストとアプリケーションテストの両方)を実行することは可能ですか?

4

4 に答える 4

8

単体テストでシミュレーターがポップアップする煩わしさを理解しています。私が見つけた最善の解決策は、単体テストを起動するときに Command + U を実行し、続いて Command + H を実行することです。(Ctrl + H は、シミュレーターが表示された後に非表示にします。) ほぼ瞬時に表示されるため、これは、視界から外す有効な方法です。

于 2011-07-27T14:32:50.447 に答える
4

次のようにシミュレーターを起動せずに、モデルクラスをテストする単体テストを実行することができました。

  1. バンドルローダーを設定したり、ホストのビルド設定をテストしたりしませんでした。代わりに、単体テストを行っていた.mファイルをビルドフェーズのコンパイルソースに追加しました。

  2. 次に、以下を使用してコマンドラインから単体テストを実行しました。

    xcodebuild -verbose -target TheElementsUnitTests -configuration Debug -sdk iphonesimulator5.0 clean build
    

なぜこれがシミュレーターを起動しなかったのかはよくわかりませんが、確かに起動しませんでした。

于 2011-11-29T22:02:52.910 に答える
1

時間/リソースはどれくらいですか? それらを減らすことに焦点を当てるのではなく、Apple の元の「Logic Test」ガイドラインをはるかに超えるようにテストを拡張することに焦点を当てたいと思います。これらのガイドラインは制限的であり、Xcode 4 より前に作成されました。今では、「これはロジック テストですか、それともアプリケーション テストですか?」と考えることなくテストを作成できます。-- すべてをテストするだけです。

于 2011-06-01T16:10:41.813 に答える