代码之家  ›  专栏  ›  技术社区  ›  George J

EdgeDriver正在通过SendKeys发送两封信

  •  1
  • George J  · 技术社区  · 9 年前

    我正在使用SeleniumWebDriver3.0执行一些自动化测试。我有一个简单的登录页面,输入登录电子邮件、密码和登录。当我使用EdgeDriver时,它会向密码字段发送两个相同的字母,而不是一个。我真的不知道为什么,因为其他司机没有这个问题。这是代码的一部分

    edgedriver.FindElement(By.Id("IDEmail")).Clear();
    edgedriver.FindElement(By.Id("IDEmail")).SendKeys("test@test.com");
    edgedriver.FindElement(By.Id("IDPass")).Clear();
    edgedriver.FindElement(By.Id("IDPass")).SendKeys("1");
    edgedriver.FindElement(By.Id("IDLogin")).Click();
    

    这将以密码字段中的11结束,并点击登录失败,因为密码错误。有任何关于EdgeDriver为什么要这么做的线索吗?。使用Microsoft EdgeHTML 14.14393版本

    1 回复  |  直到 9 年前
        1
  •  0
  •   Clayton Martin    9 年前

    似乎Edge正在填写密码。如果为测试网站保存了用户名/密码,则即使您清除了该字段,Edge也会填写密码(在本例中为字符串“1”),然后您将发送密钥(“1”),结果为“11”。

    一个直接的解决方法是删除保存的登录凭据,或者登录并让表单填充为您处理用户凭据。