問題タブ [xcode-ui-testing]
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.
ios - 外部フレームワークを UI ユニット テスト ターゲット、iOS に接続する
だから、私はすでに既存のプロジェクトを手元に持っており、アップルが提供するこの新しい派手な UI テスト バンドルを使用して、いくつかの UI テストを作成しようとしています。問題は、テスト ターゲットが外部フレームワークにアクセスできないことです (そして、そのうちの 1 つをセットアップする必要があります)。ビルド フェーズでフレームワークを追加し、メイン ターゲットからのフレームワーク検索パスに対処しても、何も起こりません。
ブラウジングの一日の後、私は「物事をちょっと違うものにする」ということを1つだけ見つけました. Bundle Loader と Test Host を$(BUILT_PRODUCTS_DIR)/App.app/Appに設定することで、外部フレームワークを test.m にインポートできませんでしたが、それを行うクラスを自分でインポートできました。そして、それがいくつかのものを壊さない限り、それはすべてうまくいきます. Bundle と Host を設定すると、UI テストで起動メソッドを実行できなくなります。
エラーでクラッシュします:アサーション エラー: UI テストの失敗 - アプリの状態はまだ終了していません。
最後に、セットアップから起動メソッドを削除し、すべてのテストを手動でトリガーすることができるため、実行する前に毎回アプリケーションを再起動しますが、この解決策は非常に間違っているようです (特に大きなプロジェクトの場合)。この問題を処理する適切な方法を知っている人はいますか?
ios - Xcode UI テストのテスト ケースでの遅延/待機
Xcode 7 ベータ 2 で利用可能な新しい UI Testing を使用してテスト ケースを作成しようとしています。アプリには、サーバーを呼び出してログインするログイン画面があります。これは非同期操作であるため、これに関連する遅延があります。
次の手順に進む前に、XCTestCase で遅延または待機メカニズムを発生させる方法はありますか?
利用可能な適切なドキュメントがなく、クラスのヘッダー ファイルを確認しました。これに関連するものは見つかりませんでした。
アイデア/提案はありますか?
ios - XcodeのiOS UIテストでピッカービューアイテムを選択するには?
「赤」、「緑」、「黄」、「黒」の項目が少ないピッカー ビューがあります。私の UI テストでは、特定の項目「緑」を選択する必要があります。Xcode 7 で導入された XCTest UI テスト API を使用しています。
これまでになんとかできたことは、単体テストでピッカー ビュー全体を上にスワイプすることです。ピッカー ビューが常に一番下の項目に変更されるため (上にスワイプした場合)、理想的ではありません。
ピッカー ビューを変更するもう 1 つの非常によく似た方法は、 を呼び出すことpressForDuration ... thenDragToElement
ですが、これは私が望んでいるものではありません。
UI テストレコード機能を使用すると、ピッカー ビューのスクロール イベントが記録されません。ピッカービューアイテムをタップすると記録されます:
しかし、テストの実行時には実際には機能しません (おそらく、タップする前に最初にピッカー ビューをスクロールする必要があるためです)。
これがテスト付きのデモアプリです。
https://github.com/exchangegroup/PickerViewTestDemo
アップデート
Xcode 7.0 beta 6 以降、ピッカー ビューを選択できるようになりました。
ios - Xcode の UI テストでネットワークから表示される静的テキストの存在を確認する方法は?
Xcode 7 XCTest で導入された UI テスト API を使用しています。私の画面には、ネットワークからロードされたテキストがあります。
プロパティで単純にチェックすると、テストは失敗しexists
ます。
ただし、最初にタップまたはその他のイベントを次のようにテキストに送信すると機能します。
exists
テキストがまだネットワークからダウンロードされていないため、呼び出すとすぐに評価されて失敗するようです。tap()
しかし、メソッドを呼び出すと、テキストが表示されるのを待つと思います。
ネットワークから配信されるテキストの存在を確認するより良い方法はありますか?
次のようなもの (このコードは機能しません):
ios - XCTest UI テストでプルを複製して更新する
UITableView
Xcode 7 (ベータ 3) の新しい Xcode UI テスト フレームワークを使用して、更新するプルを複製しようとしています。
私の現在のアプローチは、テーブルからテーブルの下にある要素にドラッグすることです。UIToolbar
これは、またはのようなテーブルの下に固定アイテムがある場合に機能しますが、UITabBar
またはUITabBar
のUIToolbar
メソッドを使用せずに引っ張って更新/ドラッグ アクションを実行する方法がわかりませんXCUIElement
。
しかし、ツールバー/タブバーがなく、セルを使用してドラッグしようとすると失敗します
これは私のコードの関連部分です:
その他の失敗した試行:
swipeDown()
(それも複数回)scrollByDeltaX/deltaY
(OS X のみ)
objective-c - Xcode の新しい UI テストを使用して複数のテストを実行しようとすると失敗する
新しい Xcode ベータ版で複数の UI テストを同時に実行しようとすると、最初のテストの後に失敗し、最初のテストの後の各テストで「UI テストの失敗: アプリの状態がまだ終了していません」というエラーが表示されます。誰でもこれを修正できますか?
ios - Xcode 7のUITestでデータをモックする方法は?
新しい Xcode 7 UI テストにモック データを含めようとした人はいますか?
- 特定のフレームワークを使用したことがありますか?
- どのように目標を管理しましたか?