sendkeys在Selenium Webdriver中不起作用

use*_*976 23 selenium selenium-webdriver

我无法使用Web驱动程序在我的应用程序中添加任何值.我的应用程序是使用框架.

我可以清除文本框的值driver.findElement(By.name("name")).clear();,但是我无法使用任何值driver.findElement(By.name("name")).sendKeys("manish");.该click命令适用于同一页面上的另一个按钮.

小智 29

我之前也遇到过这个问题.但那时我做的是让它发挥作用

myInputElm.click();
myInputElm.clear();
myInputElm.sendKeys('myString');
Run Code Online (Sandbox Code Playgroud)

  • 是的。我有一个关于为什么会这样的理论。我认为我们中受此影响的人可能是因为我们尝试发送密钥的元素位于框架中,也许这有助于硒到达它?谢谢你!! (2认同)

小智 6

在sendkeys()之前,使用click()方法(即,在您的情况下:clear()click()sendKeys()):

driver.findElement(By.name("name")).clear();
driver.findElement(By.name("name")).click(); // Keep this click statement even if you are using click before clear.
driver.findElement(By.name("name")).sendKeys("manish");
Run Code Online (Sandbox Code Playgroud)


Rob*_*ham 3

在发送密钥之前尝试单击文本框。

您可能需要在输入之前触发字段上的事件,并希望单击可以做到这一点。