


Rujukan Elemen Lapuk: Mengenalpasti Sumber Pengecualian
Menghadapi pengecualian "rujukan unsur basi" semasa melaksanakan ujian WebDriver boleh mengecewakan. Mari kita selidiki butiran ralat dan teroka penyelesaian untuk menyelesaikan isu ini.
Tinjauan Keseluruhan Ralat
Pengecualian "rujukan unsur basi" berlaku apabila WebDriver cuba untuk berinteraksi dengan elemen yang bukan lagi sebahagian daripada DOM. Ini boleh berlaku atas pelbagai sebab, seperti:
- Elemen telah dialih keluar daripada DOM sebelum WebDriver boleh melakukan tindakannya.
- Halaman telah dimuat semula atau dimuat semula, membatalkan yang sebelumnya rujukan elemen.
Contoh Kod
Coretan kod yang disediakan mempamerkan senario di mana ralat ini mungkin berlaku:
<code class="java">public static void main(String[] args) throws InterruptedException { // ... List<webelement> LeftNavLinks = driver.findElements(By.xpath("//*[@id='sliding-navigation']//a")); for (WebElement e : LeftNavLinks) { if(e.getText().equals("Benefit Status")) { driver.findElement(By.xpath(String.format("//*[@id='sliding-navigation']/li[%s]/a", i))).click(); driver.findElement(By.xpath("//* [@id='divContentHolder']/div[1]/a[1]")).click(); } i++; } }</webelement></code>
Sebab Pengecualian
Berdasarkan struktur HTML yang disediakan, ralat mungkin berlaku apabila cuba mengklik elemen dengan xpath //*[@id='divContentHolder']/div[1]/ a[1]. Ini mungkin kerana elemen telah dialih keluar atau ditukar selepas navigasi awal dan pengambilan elemen.
Penyelesaian
Untuk menyelesaikan isu ini, anda boleh melaksanakan mekanisme untuk mengendalikan pengecualian rujukan unsur basi. Satu pendekatan adalah untuk menangkap pengecualian dan mencuba semula tindakan, seperti yang ditunjukkan dalam coretan kod berikut:
<code class="java">try { driver.findElement(By.xpath("//*[@id='divContentHolder']/div[1]/a[1]")).click(); } catch (org.openqa.selenium.StaleElementReferenceException ex) { // Retry the action here driver.findElement(By.xpath("//*[@id='divContentHolder']/div[1]/a[1]")).click(); }</code>
Nota Tambahan
- Adalah penting untuk mengenal pasti baris kod yang manakah memberikan pengecualian untuk menentukan punca masalah.
- Memuat semula halaman atau menunggu elemen tertentu tersedia juga boleh mengurangkan isu ini.
- Mengelakkan menggunakan xpaths mutlak dan bergantung pada pencari yang lebih dipercayai boleh meningkatkan kestabilan.
Atas ialah kandungan terperinci Mengapa Saya Mendapat Pengecualian 'Rujukan Elemen Lapuk' dalam Ujian WebDriver Saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kelas kelas Java melibatkan pemuatan, menghubungkan, dan memulakan kelas menggunakan sistem hierarki dengan bootstrap, lanjutan, dan pemuat kelas aplikasi. Model delegasi induk memastikan kelas teras dimuatkan dahulu, yang mempengaruhi LOA kelas tersuai

Artikel ini membincangkan pelaksanaan caching pelbagai peringkat di Java menggunakan kafein dan cache jambu untuk meningkatkan prestasi aplikasi. Ia meliputi persediaan, integrasi, dan faedah prestasi, bersama -sama dengan Pengurusan Dasar Konfigurasi dan Pengusiran PRA Terbaik

Artikel ini meneroka mengintegrasikan pengaturcaraan berfungsi ke dalam Java menggunakan ekspresi Lambda, API Streams, rujukan kaedah, dan pilihan. Ia menyoroti faedah seperti kebolehbacaan dan kebolehkerjaan kod yang lebih baik melalui kesimpulan dan kebolehubahan

Artikel ini membincangkan menggunakan JPA untuk pemetaan objek-relasi dengan ciri-ciri canggih seperti caching dan pemuatan malas. Ia meliputi persediaan, pemetaan entiti, dan amalan terbaik untuk mengoptimumkan prestasi sambil menonjolkan potensi perangkap. [159 aksara]

Artikel ini membincangkan menggunakan Maven dan Gradle untuk Pengurusan Projek Java, membina automasi, dan resolusi pergantungan, membandingkan pendekatan dan strategi pengoptimuman mereka.

Artikel ini menerangkan NIO API Java untuk I/O yang tidak menyekat, menggunakan pemilih dan saluran untuk mengendalikan pelbagai sambungan dengan cekap dengan satu benang. Ia memperincikan proses, faedah (skalabilitas, prestasi), dan potensi perangkap (kerumitan,

Artikel ini membincangkan membuat dan menggunakan perpustakaan Java tersuai (fail balang) dengan pengurusan versi dan pergantungan yang betul, menggunakan alat seperti Maven dan Gradle.

Artikel ini memperincikan API soket Java untuk komunikasi rangkaian, yang meliputi persediaan pelanggan-pelayan, pengendalian data, dan pertimbangan penting seperti pengurusan sumber, pengendalian ralat, dan keselamatan. Ia juga meneroka teknik pengoptimuman prestasi, i


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

SublimeText3 Linux versi baharu
SublimeText3 Linux versi terkini

PhpStorm versi Mac
Alat pembangunan bersepadu PHP profesional terkini (2018.2.1).

Muat turun versi mac editor Atom
Editor sumber terbuka yang paling popular

Penyesuai Pelayan SAP NetWeaver untuk Eclipse
Integrasikan Eclipse dengan pelayan aplikasi SAP NetWeaver.

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa