Heim  >  Artikel  >  Java  >  Umgang mit verschachtelten Iframes in Selenium WebDriver mit Java: Eine Schritt-für-Schritt-Anleitung

Umgang mit verschachtelten Iframes in Selenium WebDriver mit Java: Eine Schritt-für-Schritt-Anleitung

Barbara Streisand
Barbara StreisandOriginal
2024-10-31 18:06:02241Durchsuche

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

Umgang mit verschachtelten Iframes in Selenium WebDriver mit Java

Diese Frage dreht sich um den Umgang mit verschachtelten Iframes mit Selenium WebDriver in Java. Die bereitgestellte HTML-Struktur umfasst zwei verschachtelte Iframes. Die Aufgabe besteht darin, den äußeren Iframe auszuwählen, um auf den inneren Iframe zuzugreifen und Text in seinen Text einzugeben. Anschließend besteht das Ziel darin, den inneren Iframe zu verlassen, den äußeren Iframe erneut zu betreten und auf die Schaltfläche „OK“ im äußeren Iframe zu klicken.

Zunächst wechselt der angegebene Code erfolgreich zum äußeren Iframe („ cq-cf-frame“) und schreibt Text in den Körper des verschachtelten Iframes („cq-gen379“). Beim Versuch, den inneren Iframe zu verlassen und die Schaltfläche „OK“ im äußeren Iframe zu finden, wird das Element jedoch nicht gefunden.

Behebung des Problems

Zu lösen Das Problem besteht darin, dass alle verschachtelten Frames (in diesem Fall der innere Iframe) explizit ausgewechselt werden müssen, bevor der äußere Frame erneut eingegeben wird. Dies wird mit der Methode drivers.switchTo().defaultContent() erreicht. Mit dieser Methode können Sie den aktuellen Frame verlassen und zum Hauptdokument zurückkehren.

Hier ist der korrigierte Code:

<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>

Diese Änderung stellt sicher, dass der Code den inneren Iframe vorher verlässt versucht, mit Elementen innerhalb des äußeren Iframes zu interagieren. Die Schaltfläche „OK“ wird erfolgreich gefunden und angeklickt.

Das obige ist der detaillierte Inhalt vonUmgang mit verschachtelten Iframes in Selenium WebDriver mit Java: Eine Schritt-für-Schritt-Anleitung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn