Java sendKeys并非始终输入完整的输入

Java sendKeys并非始终输入完整的输入,java,selenium,selenium-webdriver,Java,Selenium,Selenium Webdriver,我已经用Java编写了我的脚本,它正在Chrome浏览器中运行。我有用户名字段、密码字段和登录按钮。甚至在完成用户名字段中的输入之前,它就开始对密码字段/登录按钮执行操作 这是我的密码 driver.findElement(By.name("data[Student][email]")).sendKeys("abc@mail.com"); driver.findElement(By.name("data[Student][password]")).sendK

我已经用Java编写了我的脚本,它正在Chrome浏览器中运行。我有用户名字段、密码字段和登录按钮。甚至在完成用户名字段中的输入之前,它就开始对密码字段/登录按钮执行操作

这是我的密码

driver.findElement(By.name("data[Student][email]")).sendKeys("abc@mail.com");                   
driver.findElement(By.name("data[Student][password]")).sendKeys("abc123");                
driver.findElement(By.xpath("//*[@class='btn btn-large btn-primary']")).click();

尝试通过在中间添加一些睡眠来降低执行速度,例如

Thread.sleep(1000);
driver.findElement(By.name("data[Student][email]")).sendKeys("abc@mail.com");      
Thread.sleep(1000);             
driver.findElement(By.name("data[Student][password]")).sendKeys("abc123");                
Thread.sleep(1000);
driver.findElement(By.xpath("//*[@class='btn btn-large btn-primary']")).click();

尝试使用隐式等待,如下所示:

driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);

欢迎来到SO!对您的问题稍加说明:您可以使用标记(通过按钮或ctrl-k)格式化代码。关于你的实际问题,我不确定我是否很了解你。它是否在完成登录和密码填写之前提交表单?能否添加与元素相关的HTML代码片段:电子邮件、密码?这样就更容易理解上面的代码出了什么问题。谢谢