Saya mencoba untuk menghasilkan UItest di Xcode. Ketika saya mencoba menggesek UIview, saya mendapatkan kesalahan:
Timestamped Event Matching Error: Failed to find matching element
Ini juga terjadi jika saya mencoba mengetuk UIView.
swift
xcode
xcode-ui-testing
shay
sumber
sumber
Jawaban:
Anda harus memverifikasi bahwa opsi 'Aksesibilitas' diaktifkan untuk objek UIView yang Anda geser, misalnya:
sumber
fastlane
untuk mengambil screenshot dari tableView. stackoverflow.com/a/39331154/4475605isAccessibilityElement = true
Biasanya masalah ini teramati ketika elemen induk dari elemen yang ingin Anda rekam disetel ke isAccessibilityElement = true. Secara umum, Anda harus menyetel elemen induk ke false untuk mengakses elemen anak. Misalnya: jika Anda memiliki UILabel di dalam tampilan, aksesibilitas harus disetel ke false untuk tampilan tersebut dan disetel ke true untuk UILabel.
sumber
Di Xcode 9.3, di mana ini tampaknya masih menjadi masalah, yang saya lakukan adalah:
sumber
Untuk merekam pengujian baru, saya rasa belum ada solusinya. Tapi, jika Anda menggunakan ekstensi yang memaksa ketuk dengan tes yang sudah ada, berfungsi.
Contoh penggunaan:
Anda dapat memeriksa postingan aslinya di sini:
Tes Xcode UI - Kegagalan Pengujian UI - Gagal menggulir ke terlihat (dengan aksi AX) saat ketuk tombol "Batal 'di bidang Pencarian
sumber
Saya terkadang mengalami masalah ini. Hapus direktori aplikasi dari DerivedData tampaknya membantu.
sumber
Solusi yang berhasil untuk saya sendiri adalah mengidentifikasi objek secara berbeda.
Di Xcode 8 saya dapat menggunakan yang berikut ini:
Dengan Xcode 9 saya mendapatkan kesalahan yang disebutkan dalam pertanyaan ini. Akhirnya menggunakan yang berikut, yang berfungsi (al beit lebih rapuh daripada opsi asli)
sumber