Sebagai bahasa pengaturcaraan yang berkuasa, Java digunakan secara meluas dalam pelbagai bidang, tetapi tidak dapat dielakkan untuk menghadapi pelbagai ralat semasa penggunaan. Antaranya, Ralat Element Not Found ialah ralat yang agak biasa. Artikel ini menerangkan punca, penyelesaian dan pengelakan ralat ini.
Ralat elemen tidak ditemui biasanya muncul semasa ujian automasi web menggunakan Java. Dalam ujian automatik, pelbagai operasi perlu dilakukan melalui elemen penentududukan, seperti klik, input, dsb. Jika elemen yang terletak tidak ditemui, ralat elemen yang tidak ditemui berlaku. Ralat ini biasanya berlaku dalam dua situasi berikut:
Untuk dua situasi ini, anda boleh mengambil kaedah pemprosesan berikut:
Anda boleh menggunakan kaedah tunggu untuk melakukan operasi selepas halaman dimuatkan. Kaedah tunggu boleh terus menunggu untuk tempoh masa tertentu sehingga elemen dimuatkan. Contohnya:
WebDriverWait wait = new WebDriverWait(driver, 10); wait.until(ExpectedConditions.visibilityOfElementLocated(By.id("example")));
Jika cara meletakkan elemen tidak betul, ia juga boleh menyebabkan ralat elemen tidak ditemui. Kadangkala perlu mengubah suai kaedah penentududukan untuk menyelesaikan masalah. Contohnya:
driver.findElement(By.xpath("//input[@name='username']"));
Cara untuk mengelakkan ralat elemen tidak ditemui:
Apabila meletakkan elemen, anda harus menggunakan kedudukan stabil sebanyak mungkin. Dalam keadaan biasa, xpath agak stabil, tetapi jika struktur tapak web berubah dengan ketara, xpath juga akan menjadi tidak sah. Adalah disyorkan untuk menggunakan kaedah yang stabil seperti nama kelas dan id apabila mencari elemen.
Memandangkan masa memuatkan halaman tidak menentu, menggunakan kaedah tunggu boleh mengelakkan pengendalian elemen sebelum ia dimuatkan. Semasa proses menunggu, anda boleh menggunakan gelung untuk menentukan sama ada elemen itu muncul.
Untuk tapak web dinamik, kedudukan elemen sering berubah, jadi disyorkan untuk menggunakan kaedah penentududukan JS. Anda boleh mentakrifkan fungsi untuk mencari elemen melalui skrip JS dan mengembalikan elemen, contohnya:
private WebElement getElement() { JavascriptExecutor js = (JavascriptExecutor) driver; return (WebElement) js.executeScript("return document.querySelector('#example');"); }
Ringkasnya, ralat elemen tidak ditemui adalah masalah yang agak biasa, tetapi selagi anda menguasai kaedah yang betul, ia boleh menjadi mudah. diselesaikan. Perkara yang paling penting ialah menggunakan pendekatan yang stabil apabila meletakkan elemen dan tunggu halaman sebelum beroperasi. Ini boleh mengelakkan ralat elemen tidak ditemui dengan berkesan.
Atas ialah kandungan terperinci Ralat Java: Ralat Elemen Tidak Ditemui, Cara Mengendalikan dan Mengelak. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!