問題タブ [octest]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
xcode - Xcode 4 の [製品] > [テスト] メニュー オプションを有効にする条件は何ですか?
Xcode 4 で製品の「テスト」オプションを有効にする理由は完全には明らかではありません。関連付けられた.octest
ターゲットで新しいプロジェクトを作成すると有効になります。
特定のターゲットを別のターゲットのテストとしてリンクするためのフラグまたはオプションはありますか? 参考資料は、テストが機能しているときにテストを行うことについてのみ話しているようであり、そもそもそれらを機能させることはしていないようです。
私がやろうとしているのは、クロスプラットフォームの C++ アプリケーションをテストするために、Objective-C 以外のテスト フレームワーク (この場合はCatch ) を使用することです。関連付けられた Foundation ライブラリを含む Objective-C は、ターゲットでは使用できません。
xcode - Xcode 4.x を使用した Objective-C++ フレームワークの単体テスト
Objective C++ を使用してフレームワークを作成していますが、単体テストのセットアップに問題があります。
フレームワーク ターゲットだけをコンパイルすると正常に動作します。
しかし、Xcode にテスト バンドルをコンパイルして実行するように指示すると、次のようになります。
私は持っている:
両方のビルド ターゲット (フレームワークとテスト バンドル)に設定します。
もちろん、テスト バンドル ターゲットのフレームワークにリンクしています。
さらに、すべてのフレームワーク ヘッダーはパブリックとしてマークされます。
また、フレームワーク ファイルをテスト バンドルのターゲットに追加して、除外してみました。これらのどれも問題を解決しませんでした。
今ここで何がうまくいかないのか、私は少し困惑しています。何か案は?
これは、私のC++クラスがどのように見えるかです(ちょっと):
そして、これは私のテストケースです:
編集.hh
: コードを&.mm
ファイルに分割します。それでも同じエラーが発生します。
c++ - Xcode での C++ コードの単体テスト
Objective-C コードに OCTest を使用しています。OCTest は C++ をサポートしていますか? C++ クラスのテストを作成するにはどうすればよいですか?
iphone - コマンドラインからiPhoneでOCUnitテストを起動するにはどうすればよいですか?
Xcodeを使用せずにiPhoneで単体テストを実行したい。iPhoneデバイスでOCunitテストを実行するためのコマンドラインユーティリティはありますか?フルーツストラップも試しましたが、アプリは起動するだけで、OCtestは起動しません。「fruitstrap-dpath_of_app」このコマンドはアプリをインストールしますが、iPhoneにoctestをインストールして実行する方法が見つかりませんでした。
xcode - 1 つのユニットで、ネットワークに依存する操作をどのようにテストしますか?
私のアプリの中には、インターネットからデータを取得するものがあります。単体テストを書く習慣がついてきました。インターネットから返された値のテストを書くと、遅延や信頼性の問題が発生するのではないかと思います。
「Web リクエストの反対側にある」データをテストする有効な方法は何ですか?
私は Xcode に付属しているストック ユニット テスト ツールキットを使用していますが、この質問は理論的にはどのテスト フレームワークにも当てはまります。
ios - OCUnit アプリケーション テストでログイン/認証をバイパスする
iOS プロジェクト用に OCUnit を使用してアプリケーション テストをセットアップしたばかりで、認証をどうするかを考えています。私のアプリには強制ログイン画面があり、ユーザーはメインアプリに入る前に Facebook で認証する必要があります。ユーザーが認証することを決定すると、Safari にポップされ、Facebook によって管理される認証シーケンスを経て、アプリに戻されます (新しいユーザーの場合は、さらに登録手順が必要です)。
私が理解しようとしているのは、ログイン画面を通過するアプリケーション テストを取得するにはどうすればよいかということです。
私が検討したオプションの 1 つは、コードで検出できるプリプロセッサ マクロ (「TEST = 1」など) を追加する新しいビルド構成 (「Test」など) を作成することです。次に、そのテスト構成についてのみ、通常のログイン コードを、アプリが Safari にポップアウトする必要のない FBTestSession に置き換えることができました。ただし、よりクリーンなオプションがあればいいのですが...
FBTestSession のドキュメントは次のとおりです: https://developers.facebook.com/docs/reference/ios/3.0/class/FBTestSession/
前もって感謝します!
ios - pthread_mutex_lock により、UIWebView の割り当て時に OCTest がクラッシュする
単体テストに関する別の質問です。単体テストを行う私の iOS プロジェクトの 1 つで、UIWebView を使用する必要があります。1 つまたは任意のテスト メソッドを作成する- (void)setUp;
と、それ以上の情報がなくてもテスト全体がクラッシュします。Debug Navigator には次の情報のみが表示されます。0 pthread_mutex_lock
ロックやマルチスレッドについてはまったく何もしていません。同じエラーで同期しようとしました。また、同じ動作でまったく異なる新しいプロジェクトを試しました。これは、UIWebview を割り当てようとしたときにのみ発生します。UIViewController だけでなく UIViews も割り当てようとしましたが、すべてうまくいきました。
だから私の質問は:
- なぜこれが起こるのですか?
- この問題を解決するにはどうすればよいですか?
ここで目にする唯一の方法は、OCMock のようなフレームワークを使用して Web ビューをモックすることです。しかし、なぜ私のテストがこのようにクラッシュするのか知りたいです...
前もってありがとう、トムテ
更新: Xcode 5 と Xcode 4 でこの問題がまだあります。OCMock でモックを使用しようとしましたが、元の UIWebView のデリゲートを削除しませんでした。すべてのデリゲートでモックを使用する方法の例があれば、お気軽に教えてください...