Tests ich einen Test für eine Sammlung Ansicht, die wie folgt funktioniert:Wrong Zellen zählen in UI Sammlung Ansicht
func testDeleteItem() {
app.collectionViews.staticTexts["Item"].tap()
app.buttons["Delete"].tap()
XCTAssertEqual(app.collectionViews.cells.count, 2)
XCTAssertFalse(app.collectionViews.cells.staticTexts["Item"].exists)
}
Nach dem Wasserhahn, ein neuer Bildschirm mit der Löschtaste ist. Wenn die Schaltfläche angetippt wird, wird der Bildschirm automatisch beendet und die Sammlungsansicht erneut geladen. Alles geht wie erwartet in der Benutzeroberfläche, aber ich bekomme beide Behauptungen fehlgeschlagen. In der ersten Zählung ist es immer noch 3 und in der zweiten zählt es noch.
Bearbeiten: Ich habe dieses simple example on GitHub erstellt, um den Fehler zu präsentieren.
I-Test in Simulator sehen wie es geht und es sollte ok sein. Screenshots zeigen auch 2 Artikel übrig.Ich dachte, es kann scheitern, weil es nicht darauf wartet, die Bildschirmabweisung zu beenden, aber "expectationForPredicate" mit "waitForExpectationsWithTimeout" schlägt ebenfalls fehl. –
Logs zeigen nichts außer Betrieb. –
Dieser Test schlägt auch fehl, wenn die Zelle direkt in 'collectionView: didSelectCell:' gelöscht wird, wodurch die Tests in altem guten 'dispatch_async' ausgeführt werden. Es scheint keine richtige Lösung zu sein, weist aber auch auf Threading hin. Interessant –