在Selenium中,内容文本框会自动删除

时间:2016-10-11 02:54:57

标签: java selenium textbox webdriver

我正在尝试使用selenium中的以下代码在文本框中编写文本:

driver.findElement(By.name("name_value")).sendKeys("abc");

然而,它写入文本框,但一旦移出该输入框,内容就会被删除。

请建议。

1 个答案:

答案 0 :(得分:0)

这很可能与应用程序中的javascript事件有关。

它不是selenium的错,而是应用程序检索击键的方式。

环顾四周,我确定你会在keydown / keypress,keyup和一些验证方法上找到一些必然的东西。如果验证方法没有及时完成,则很可能会清除文本字段。

你有几个解决方案 -

  1. 使用JavaScriptExecutor取消关键事件
  2. 使用Actions而不是sendKeys(),并在每次按键之间设置超时。
  3. 类似(伪代码):

    void sendKeys(String keys) {
      for (Char key : keys.chars()) {
        Actions.press(key)
        Thread.sleep(500)
      }
    }
    
    1. 多次使用sendKeys()。尝试3次,如果没有设置,请尝试其他解决方案。