【问题标题】:Selenium is breaking my page in IE11 when I set text当我设置文本时,Selenium 在 IE11 中破坏了我的页面
【发布时间】:2015-09-11 23:30:06
【问题描述】:

我在 Chrome 上使用 Selenium 进行了一些自动化测试,但现在当我在 IE11 中尝试它们时,我得到了这种奇怪的行为:我进入一个带有搜索框和搜索按钮的页面,非常标准,当我要么 set(" ") 或 sendKeys(" ") 到输入文本框,页面“移动”到左边,就像它已经坏了一样,想象页面在中心屏幕,突然左边距会消失,页面会向左伸展......有人知道我在说什么吗? 有什么帮助吗?

顺便说一句,我也尝试在其他元素中执行一些操作,它们不会破坏页面,单击文本框也不会成功,当我将文本放入其中时会发生这种情况

【问题讨论】:

  • 你提供一些代码和可重现的场景怎么样?
  • 很抱歉我不能给你一个场景:(我不能透露任何涉及这个项目的信息。我只是想知道这是否是 Selenium 的问题(如果它发生了)以前的人)或者如果我的应用程序在使用此控件访问时损坏了。应用程序是用 Angular 制作的,如果相关的话

标签: java selenium internet-explorer-11


【解决方案1】:

嗯,“sendKeys”很可能就是我们所说的“本机事件”,因此它高度依赖于 IE 二进制驱动程序的实现。例如,Selenium 仅在 Firefox 31.0.6 之前正式支持原生事件,而不是 32+ 版本。 IE11 相当新,而且有不同的版本(因为它会自动更新)。因此,如果您需要做一个非本地的 sendKeys(这通常不是必需的),那么您可以使用 JavascriptExecutor 对象编写一个。让我们知道这是否适合您。

-- 附录-- Selenium 团队会告诉您,他们不想在 Selenium 中包含 javascriptExecutor 功能,但在这样的场景中,执行器功能显示了它的真正价值。

【讨论】:

  • 我用 JS 试过了,它在不破坏页面的情况下设置了值!但看起来它有一些“keyPress”“keyUp”事件,如果我设置这样的值,它不会让我进行搜索:(还有其他选项吗?
  • 好的,我终于让它和 JS 一起工作了,Angular 有一些问题让我无法发送数据,谢谢!
猜你喜欢
  • 1970-01-01
  • 2013-12-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-04-22
  • 1970-01-01
  • 2012-03-28
  • 1970-01-01
相关资源
最近更新 更多