总是得到" org.openqa.selenium.ElementNotVisibleException:元素不可见"例外

时间:2018-05-07 12:35:15

标签: java selenium selenium-webdriver webdriver

我尝试了最大可能的方法,但总是得到:

org.openqa.selenium.ElementNotVisibleException: element not visible
在执行selenium脚本期间,

特定Web元素的异常(在弹出窗口中)。

元素Xpath值是: 元素选择器值为:#edited_name

元素的复制值为:

<input required="required" type="text" id="edited_name" name="edited_name" value="AT Main Category1" placeholder="" class="form-control">

3 个答案:

答案 0 :(得分:0)

  • 尝试添加等待 - 显式等待或隐式等待以等待元素变为可见。可能需要等10秒钟。
  • 此外,使用Xpath时,请勿使用#,请使用by.cssSelector("input#edited_name");

答案 1 :(得分:0)

由于所需元素是<input>元素,您可以按如下方式引导 WebDriverWait

  • cssSelector

    new WebDriverWait(driver, 20).until(ExpectedConditions.elementToBeClickable(By.cssSelector("//input.form-control#edited_name"))).click();
    
  • xpath

    new WebDriverWait(driver, 20).until(ExpectedConditions.elementToBeClickable(By.xpath("//input[@class='form-control' and @id='edited_name']"))).click();
    

答案 2 :(得分:0)

如果您的不可见元素位于弹出窗口中,则需要将驱动程序切换到弹出窗口。

driver.switchTo().alert();
driver.findElement(...