Mengurus Nested iFrames Menggunakan Selenium WebDriver dalam Java
Masalah:
Dalam senario dengan iFrames bersarang, anda perlu menavigasi ke iFrame dalaman untuk memanipulasi elemennya, kemudian kembali ke iFrame luar untuk berinteraksi dengan kandungannya. Walau bagaimanapun, anda menghadapi masalah apabila menavigasi kembali ke iFrame luar gagal untuk mengesan unsur di dalamnya.
Penyelesaian:
Untuk mengendalikan iFrames bersarang dengan berkesan, ikut langkah berikut:
Tukar kepada iFrame Luar:
<code class="java">driver.switchTo().frame("cq-cf-frame");</code>
Tukar kepada iFrame Dalam:
<code class="java">driver.switchTo().Frame("cq-gen379");</code>
Berinteraksi dengan Elemen Inner iFrame:
<code class="java">driver.findElement(By.id("CQrte").sendKeys("Tnx");</code>
Tukar keluar daripada Inner iFrame:
Jangan gunakan "saudara" atau "ibu bapa". Sebaliknya, tukar kepada kandungan lalai (di luar semua bingkai) menggunakan:
<code class="java">driver.switchTo().defaultContent();</code>
Tukar kembali ke iFrame Luar:
<code class="java">driver.switchTo().frame("cq-cf-frame");</code>
Berinteraksi dengan Elemen iFrame Luar:
<code class="java">driver.findElement(By.xpath("//button[text()='OK']")).click();</code>
Nota Tambahan:
Atas ialah kandungan terperinci Bagaimana untuk Mengendalikan iFrames Bersarang dengan Berkesan dalam Selenium WebDriver dengan Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!