Heim >Java >javaLernprogramm >Wie wechselt man mit Selenium WebDriver in Java zwischen verschachtelten Frames?

Wie wechselt man mit Selenium WebDriver in Java zwischen verschachtelten Frames?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-11-30 14:12:12828Durchsuche

How to Switch Between Nested Frames Using Selenium WebDriver in Java?

Wechseln zwischen verschachtelten Frames mit Selenium WebDriver in Java

Bei der Arbeit mit WebDriver in Java kann die Navigation zwischen mehreren verschachtelten Frames eine Herausforderung sein. Die nativen WebDriver-Methoden unterstützen die Frame-Verarbeitung möglicherweise nicht vollständig.

Problem:
Sie versuchen, mit „selectFrame relative=top select Frame=middle Frame“ zwischen zwei Frames zu wechseln. Befehle, die von der Selenium-IDE stammen. Allerdings erkennt die WebDriver-Schnittstelle weder den Parameter „relative“ noch die Zeichenfolge „middleFrame“.

Lösung:
WebDriver stellt den Treiber.switchTo().frame() bereit. Methode zum Wechseln zwischen Frames. Es erfordert eines der folgenden Argumente:

  • Index: Wählt einen Frame anhand seines Index (0-basiert) auf der aktuellen Seite aus.
  • Name/ID: Wählt einen Frame anhand seines Namens oder ID-Attributs aus (Frames mit übereinstimmenden Namen haben Vorrang vor IDs).
  • WebElement: Wählt einen Frame mithilfe eines zuvor gefundenen WebElements aus.

Um zwischen den gewünschten Frames in Ihrem Szenario zu wechseln, sollten Sie diese zunächst lokalisieren mit der Methode „driver.findElement()“. Sobald Sie die WebElement-Referenzen für jeden Frame haben, können Sie mit dem folgenden Code zu ihnen wechseln:

// Switch to the outer frame
driver.switchTo().frame(outerFrameElement);

// Switch to the inner frame within the outer frame
driver.switchTo().frame(innerFrameElement);

Sobald Sie erfolgreich zum gewünschten Frame gewechselt haben, werden alle nachfolgenden WebDriver-Befehle innerhalb dieses Frames ausgeführt .

Das obige ist der detaillierte Inhalt vonWie wechselt man mit Selenium WebDriver in Java zwischen verschachtelten Frames?. 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