我有一个不可见的输入框,Selenium IDE在录制和播放模式下能够将密钥发送到其中并且输出成功。 同样的事情webdriver抛出一个错误元素是不可见的,因此无法与之交互。 我已经尝试使用document.findElements.ByclassName编写脚本..没有错误,但也没有输出。 请参阅下面的代码:
{
driver.findElement(By.cssSelector("li.cwd-clue")).click();
assertTrue(isElementPresent(By.xpath("//input[@class='cwd_input']")));
System.out.println("assert true");
WebElement tmpElement= driver.findElement(By.className("cwd_input"));
JavascriptExecutor executor = (JavascriptExecutor)driver;
executor.executeScript("document.getElementsByClassName('cwd_input') [0].click();",tmpElement);
tmpElement.sendKeys("TELLER");}
答案 0 :(得分:1)
如图所示添加WebDriverWait。
WebElement ele=driver.findElement(By.xpath("//input[@class='cwd_input']");
WebDriverWait wait=new WebDriverWait(driver,10).until(ExpectedConditions.presenceOfElementLocated(ele));