問題タブ [xctestcase]

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.

0 投票する
2 に答える
2780 参照

ios - XCTestCase - iOS UI テスト - 多くのセルを持つ UITableView を扱う

(Xcode 7)UI XCTestCaseテストケースを試していますが、多くのセル(4000以上)を持つUITableViewがある1つのUIViewの問題に遭遇しました。

アプリが正常に実行されている場合、表示されているセルのみがレンダリングされ、パフォーマンスの問題はまったくありません。ただし、XCTestCase を記録するコンテキスト内でアプリを実行し、この画面に移動すると、シミュレーターがフリーズします。これは、各セルが表示されているかのようにレンダリングされるためと思われます。ナビゲーションを手動でスクリプト化し、XCTestCase を実行すると、この画面に移動した直後にテスト ケースが失敗し、「UI テストの失敗 - 更新されたスナップショットの取得に失敗しました」というメッセージが表示されて終了します。時間内に終わらない。

これは、テスト フレームワークが表示中の画面のメタモデル全体を構築し、4000 以上のセルのそれぞれをビュー ツリー階層に追加するという事実に関係していると思います。

テスト コンテナーがすべてのセルのレンダリングを完了するのに十分な時間を与えることを期待して、期待値を追加しようとしましたが、これは機能しません。

これに対する回避策はありますか? UIツリー階層などの一部の構築をスキップすることは何とか可能ですか? 私の目標は、この画面の UI テストを記述できるようにすることです。

0 投票する
2 に答える
8648 参照

ios - XCTestCase: アプリがアイドル状態になるまで待機

アプリがアイドル状態になるまでテストが無限に待機するため、UI テストが失敗します。ローディングスピナーのように、バックグラウンドで何かが起こっていることがわかりません。

1 つのタブでのみ発生します。他のすべてのタブはタップ可能ですが、テストは画面 3 で失敗します。テストが画面 3 でキャッチされた後、別のタブをクリックすると、テストが再開され、正常に終了します。

何か案は?

0 投票する
2 に答える
947 参照

ios - ld:アーキテクチャ i386 のフレームワークが見つかりません

フレームワークでメソッドをテストしようとしていて、簡単なテスト ケースを作成しました。しかし、実行に失敗し、xcode で次のエラーが表示されます。

フレームワークが組み込みバイナリとビルド フェーズ セクションに追加されていることを再確認しました。

ここに私のテストファイルがあります:

上記の 2 行のコメントを外すと、Framework not found エラーが発生します。

また、私は次の方法を試しました:

  • フレームワークは、組み込みバイナリフレームワーク セクションに追加されます。
  • フレームワークに迅速なコードが含まれているため、埋め込みに迅速なコードが含まYESれています。
  • パッケージング セクションの実行可能プレフィックスが空です。(@executable_path/Frameworksには設定されていません)
  • ランパス リンク時の検索パスを に設定

    $(継承) @executable_path/Frameworks @loader_path/Frameworks

  • また、プロジェクトをクリーンアップして xcode を再起動し、フレームワークをビルドしてみました。

  • 派生データを削除しました。

何が問題なのかわかりません。何か案は?

0 投票する
1 に答える
911 参照

uiswitch - XCUIElementQuery UISwitch で expectedForPredicate を使用する方法

UISwitch が有効になるのを待つ UI テスト (XCTestCase) を作成する方法。

このコードをテストの 1 つに追加しましたが、タイムアウトになりました。

0 投票する
4 に答える
3435 参照

ios - XCTest for iOS でのテストの向きを変更するにはどうすればよいですか?

XCTestCase をさまざまな方向で使用して iOS アプリをテストしようとしています。方向を変更するプログラムによる方法が必要です。これを 2 つの方法で実行しようとしましたが、どちらも向きを変更しませんでした (向きは UIInterfaceOrientationPortrait のままでした)。

試行 1

試行 2

[[UIApplication sharedApplication] statusBarOrientation] を読むと、テスト目的で向きを変更する別の方法はありますか?