Rumah >Java >javaTutorial >Bagaimanakah Selenium WebDriver dalam Java Boleh Mengendalikan Pop Timbul Pengesahan dengan Cekap?

Bagaimanakah Selenium WebDriver dalam Java Boleh Mengendalikan Pop Timbul Pengesahan dengan Cekap?

Susan Sarandon
Susan Sarandonasal
2024-12-27 13:26:14610semak imbas

How Can Selenium WebDriver in Java Efficiently Handle Authentication Popups?

Pengendalian Pop Timbul Pengesahan dengan Selenium WebDriver Menggunakan Java

Timbul timbul pengesahan dalam aplikasi web kadangkala boleh menimbulkan cabaran untuk ujian automatik menggunakan Selenium WebDriver. Satu pendekatan biasa untuk mengendalikan pop timbul ini ialah dengan menetapkan pilihan penyemak imbas dan mengubah suai URL untuk memasukkan bukti kelayakan log masuk. Walau bagaimanapun, pendekatan ini mungkin tidak selalu berkesan.

Masalah Yang Dihadapi:

Apabila cuba mengendalikan pop timbul pengesahan menggunakan kod berikut, pop timbul masih muncul dan ujian boleh hanya diteruskan selepas membatalkan secara manual ia:

FirefoxProfile profile = new FirefoxProfile();
profile.setPreference("network.http.phishy-userpass-length", 255);
profile.setPreference("network.automatic-ntlm-auth.trusted-uris", "x.x.x.x");
driver = new FirefoxDriver(profile);
baseUrl="http://" + login + ":" + password + "@" + url;
driver.get(baseUrl + "/");

Penyelesaian:

Untuk memintas pop timbul pengesahan dan mengautomasikan proses pengesahan, kami boleh memanfaatkan kaedah authenticateUsing() yang diperkenalkan dalam Selenium 3.4. Berikut ialah coretan kod yang dikemas kini yang menggabungkan kaedah ini:

WebDriverWait wait = new WebDriverWait(driver, 10);      
Alert alert = wait.until(ExpectedConditions.alertIsPresent());     
alert.authenticateUsing(new UserAndPassword(username, password));

Nota:

  • Kaedah authenticateUsing() kini dalam beta mulai Selenium 3.4.
  • Coretan kod yang disebutkan boleh digunakan untuk InternetExplorerDriver sahaja.

Atas ialah kandungan terperinci Bagaimanakah Selenium WebDriver dalam Java Boleh Mengendalikan Pop Timbul Pengesahan dengan Cekap?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn