So automatisieren Sie Shadow DOM mit mehreren Shadow Roots mithilfe des Selenium Java FrameworksJava

Java-Forum
Anonymous
 So automatisieren Sie Shadow DOM mit mehreren Shadow Roots mithilfe des Selenium Java Frameworks

Post by Anonymous »

2.Ich verwende auch das Selenium Java-Framework für die Testautomatisierung und vor kurzem wurde die Anwendung mithilfe von Saffron mit Shadow DOM aktualisiert. Wir haben versucht, die Automatisierung mithilfe des Javascript-Executors querySelector durchzuführen. Die Anwendung verfügt über mehr als 20 Schattenwurzeln auf einer einzelnen Seite und die meisten Schattenwurzeln sind untergeordnete Elemente der vorherigen Wurzel. Um ein Element zu identifizieren, müssen wir also viele Wurzeln durchlaufen, wie in document.querySelector('root1').shadowRoot.querySelector('root2').... also bis zur n-ten Wurzel, um ein Element zu finden.

Code: Select all

WebDriverWait wait = new WebDriverWait(driver, Duration.ofSeconds(10));
WebElement shadowHost = wait.until(ExpectedConditions.presenceOfElementLocated(By.cssSelector(".PersonaSelectionPage-button")));

SearchContext shadowRoot = shadowHost.getShadowRoot();
WebElement controlBtn = shadowRoot.findElement(By.cssSelector(".control"));

// Use JS to click the actual element
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("arguments[0].click();", controlBtn);
Thread.sleep(4000);

Könnten Sie bitte einen Einblick in andere Lösungen zur Automatisierung von Shadow DOM mit Selen geben?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post