Loading

ChromeDriver 90 and newer throws JavaScript Error on ShadowRoot

Data pubblicazione: Oct 13, 2022
Descrizione
When you upgrade to ChromeDriver 90 and newer, you can no longer use Selenium’s MoveToElement() method.
An error is thrown: *JavascriptException: Message: javascript error: Disallowed method "elementsFromPoint" on ShadowRoot.* This error occurs when you use Selenium/WebDriver functions in synthetic shadow DOM.
Risoluzione
Use JavaScript events like mouseover, focus, or tab instead. For example:

JavaScript (WebDriverIO)

const element = await browser.$('/xpath/to/your/element');
await browser.execute(el => el.dispatchEvent(new MouseEvent('mouseover', {'bubbles': true })), element);

Java (Selenium)

WebElement element = driver.findElement(By.xpath("/xpath/to/your/element"));
((JavascriptExecutor) driver).executeScript("arguments[0].dispatchEvent(new MouseEvent('mouseover', {'bubbles': true }));", element)

C# (Selenium)

var element = driver.FindElement(By.XPath("/xpath/to/your/element"));
((IJavaScriptExecutor) driver).ExecuteScript("arguments[0].dispatchEvent
Numero articolo Knowledge

000392951

 
Caricamento
Salesforce Help | Article