【问题标题】:sendKeys is not entering the complete input all the timesendKeys 始终没有输入完整的输入
【发布时间】:2014-11-18 09:12:27
【问题描述】:

我用 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();

【问题讨论】:

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

标签: java selenium selenium-webdriver


【解决方案1】:

尝试通过在两者之间添加一些 sleep 来减慢执行速度,例如

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();

【讨论】:

    【解决方案2】:

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-05-15
      • 1970-01-01
      • 1970-01-01
      • 2015-08-21
      • 2019-10-13
      • 1970-01-01
      • 1970-01-01
      • 2018-03-22
      相关资源
      最近更新 更多