java.lang.NullPointerException 尝试使用 Selenium 定位阴影元素时出现错误

问题描述 投票:0回答:0

我正在尝试定位一个字段来上传文件,但该元素位于 shadow-root 中

我尝试了以下代码,但我在

java.lang.NullPointerException
上得到了
shadowRoot.findElement

private static WebElement getShadowRoot(WebDriver driver, WebElement shadowHost) {
    JavascriptExecutor js = (JavascriptExecutor) driver;
    return (WebElement) js.executeScript("return arguments[0].shadowRoot", shadowHost);
}
    
public void uploadFileWithIncorrectBirthYear() throws TestingException {
    String url = System.getProperty("user.dir")+"\\src\\test\\resources\\files\\customer-upload-old-birth-year.xls";
    WebElement shadowHost = driver.findElement(By.cssSelector("#cphContent_cifCustomerFile_fakeFileInput"));
    SearchContext shadowRoot = getShadowRoot(driver,shadowHost);
    WebElement shadowElement = shadowRoot.findElement(By.cssSelector("#file-upload-button"));
    shadowElement.sendKeys(url);
}

 
selenium-webdriver dom
© www.soinside.com 2019 - 2024. All rights reserved.