問題タブ [fbsnapshottestcase]
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 - Xcode ではテストに合格するが、Circle CI では失敗する
質問:このプル リクエストでは、テストは CircleCI ではパスしませんが、テストはローカルでパスします。なんで?
CircleCI テスト出力は、すべてのテストの失敗を示していFBSnapshotTestCase
ます。例えば:
✗ testAdjustsFontSizeToFitWidth, ((comparisonSuccess__) は true) に失敗しました - スナップショットの比較に失敗しました: エラー Domain=FBSnapshotTestControllerErrorDomain Code=1 「参照イメージを読み込めません。」UserInfo=0x7f85f36b0a50 {NSLocalizedFailureReason=参照画像が見つかりません。レコード モードでテストを実行する必要があります。NSLocalizedDescription=参照イメージを読み込めません。
[…]
✗ testAttributedTruncationToken、((comparisonSuccess__) は true) に失敗しました - スナップショットの比較に失敗しました: エラー Domain=FBSnapshotTestControllerErrorDomain Code=1 「参照イメージを読み込めません。」UserInfo=0x7f85f35b06d0 {NSLocalizedFailureReason=参照画像が見つかりません。レコード モードでテストを実行する必要があります。NSLocalizedDescription=参照イメージを読み込めません。
ただし、同じテストがローカルでパスします。
CircleCI では、テストReferenceImages_32
は存在しないディレクトリを使用します。
ただし、イメージは に存在しReferenceImages_64
ます。ファイルで iPhone 6 シミュレーターを使用するように指定されて_64
いるため、次のディレクトリが使用されると予想されます。circle.yml
- これは何が原因ですか?
- CircleCI でテストをパスするにはどうすればよいですか?
- おそらく関連:この
FBSnapshotTestCase
問題
ios - UICollectionView performBatchUpdates 完了が画面外で呼び出されない
ビューコントローラーにスナップショットテストを使用しています。これは、View Controller がテストでどのように初期化されるかです。
私のView ControllerにはUICollectionViewが含まれています。performBatchUpdates を使用してコレクション ビューの更新を実行すると、更新ブロックが終了しても完了が呼び出されません。
コレクションビューのオフスクリーンレンダリングに関連していると思います。誰かが同様の問題を経験したことがありますか? 画面上にあることを UICollectionView に納得させるには何が欠けていますか?
ios - iPhone6s Plus シミュレーターで実行しているかどうかを確認する方法
デバイスごとのスナップショット テストがあります。スナップショットがある特定のシミュレーターで実行していることをテストで確認したいと思います。
たとえば、現在のシミュレーターが iPhone6sPlus9.2 であることをテストしたいのは、私が持っている他の多くのシミュレーター タイプのスナップショットが記録されていないためです。
私は次のような多くのバリエーションを試しました:
また、ここからのコードhttps://github.com/erica/uidevice-extension/
そしてからのコード
// UIDevice+YYAdd.h // YYKit https://github.com/ibireme/YYKit
ただし、どちらもデバイス タイプの「x86」などの無関係な値を返しています。