Rumah  >  Artikel  >  Java  >  Cara Mengendalikan Iframe Bersarang dalam Selenium WebDriver dengan Java: Panduan Langkah demi Langkah

Cara Mengendalikan Iframe Bersarang dalam Selenium WebDriver dengan Java: Panduan Langkah demi Langkah

Barbara Streisand
Barbara Streisandasal
2024-10-31 18:06:02337semak imbas

How to Handle Nested Iframes in Selenium WebDriver with Java: A Step-by-Step Guide

Mengendalikan Nested Iframes dalam Selenium WebDriver Menggunakan Java

Soalan ini berkisar tentang pengendalian iframe bersarang menggunakan Selenium WebDriver dalam Java. Struktur HTML yang disediakan melibatkan dua iframe bersarang. Tugasnya ialah memilih iframe luar untuk mengakses iframe dalam dan memasukkan teks ke dalam badannya. Selepas itu, matlamatnya adalah untuk keluar dari iframe dalam, masukkan semula iframe luar dan klik butang "OK" yang terletak di dalam iframe luar.

Pada mulanya, kod yang diberikan berjaya bertukar ke iframe luar (" cq-cf-frame") dan menulis teks ke dalam badan iframe bersarang ("cq-gen379"). Walau bagaimanapun, apabila cuba keluar dari iframe dalam dan mencari butang "OK" dalam iframe luar, elemen itu tidak ditemui.

Mengatasi Masalah

Untuk menyelesaikan isu ini, adalah perlu untuk menukar secara eksplisit daripada semua bingkai bersarang (dalam kes ini, iframe dalam) sebelum memasuki semula bingkai luar. Ini dicapai menggunakan kaedah driver.switchTo().defaultContent(). Dengan menggunakan kaedah ini, anda boleh keluar dari bingkai semasa dan kembali ke dokumen utama.

Berikut ialah kod yang diperbetulkan:

<code class="java">// Between step 4 and step 5
// Remove selenium.selectFrame("relative=up");

// Exit the nested iframe
driver.switchTo().defaultContent();

// Re-enter the outer iframe
driver.switchTo().frame("cq-cf-frame");

// Continue step 6
driver.findElement(By.xpath("//button[text()='OK']")).click();</code>

Pengubahsuaian ini memastikan kod keluar dari iframe dalam sebelum cuba berinteraksi dengan elemen dalam iframe luar. Ia akan berjaya mencari butang "OK" dan klik padanya.

Atas ialah kandungan terperinci Cara Mengendalikan Iframe Bersarang dalam Selenium WebDriver dengan Java: Panduan Langkah demi Langkah. 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