如何使用Selenium Web驱动程序从多个文本框中清除插入的字符串

时间:2014-09-08 18:56:17

标签: selenium

我已经从Excel第一栏的注册表单中将密钥发送到了一组文本框。当我试图从excel表的第二列发送密钥时,这些附加到现有字符串。我们可以使用findElement(By.id("xyz")).clear逐个清除它们。但我想一次清除所有文本框。我们有什么逻辑吗?请帮我。几个小时后它就吓坏了我。

我在下面尝试登录,但抛出异常:

List<webelement> list1 = driver.findElement(By.className("tab1")).findElements(By.tagName("input"));

for(i=0; i < list1.size(); i++)
{
    List1.get(i).clear;
}

异常:元素当前不可见,因此可能无法与之交互 命令持续时间或超时:32毫秒

2 个答案:

答案 0 :(得分:1)

我明白了!!!

我已将所有文本字段以其类名存储在单个列表中,它们都具有相同的类名。

List<WebElement> List1 = driver.getElements(By.ClassName("xyz"));
for(i=0;i<List1.size();i++)
{
List1.get(i).clear
}

答案 1 :(得分:0)

检查,如果所有这些项目都在表格下,然后使用JS重置方法,则可以重置。

document.getElementById("myForm").reset();

在javascriptExecutor下执行。

您还可以尝试将一些html代码应用于存在所有字段的源代码,并在运行时使用JS重置它们。

仅使用硒不能实现。希望它有所帮助。