Saya menggunakan Capybara 2.1 dengan Ruby 1.9.3 menggunakan driver Selenium (dengan Minitest dan Test Unit) untuk menguji aplikasi web.
Saya berjuang dengan masalah StaleElementReferenceException
. Saya telah melihat cukup banyak diskusi tentang topik tersebut tetapi saya belum dapat menemukan solusi atas masalah yang saya hadapi.
Jadi pada dasarnya, saya mencoba menemukan semua elemen penomoran halaman di halaman saya menggunakan kode ini:
pagination_elements = page.all('.pagination a')
Lalu saya melakukan beberapa pernyataan pada elemen-elemen tersebut seperti:
pagination_elements.first.must_have_content('1')
Setelah pernyataan tersebut, saya melanjutkan pengujian dengan mengklik link Halaman Berikutnya untuk memastikan bahwa elemen penomoran halaman pertama saya di masa mendatang adalah Halaman Sebelumnya. Untuk melakukan itu saya mengambil elemen pagination lagi:
new_pagination_elements = page.all('.pagination a')
Dan Kesalahan Basi terjadi di sini, karena saya mencapai elemen yang telah saya capai. ( Ini kesalahannya )
Anda dapat melihat status tautan di sini.
Saya benar-benar tidak tahu bagaimana membuat tes umum ini berfungsi dengan baik. Apakah Anda punya tip tentang cara yang lebih baik untuk menjangkau elemen penomoran halaman saya?