Selenium - 为什么最小化浏览器会给出元素未找到错误,而max不会

时间:2014-09-22 15:57:44

标签: selenium-webdriver

我正在使用Selenium 2.0,据我所知,Selenium并不真正关心浏览器的大小。但是,当我单击下拉菜单时,它似乎无法找到不在浏览器视图中的所有元素,而当它最大化时它可以。

我个人认为它会浏览网页脚本,但我的观察证明我错了。

评论?

1 个答案:

答案 0 :(得分:4)

您对Selenium内部工作原理的假设对于Selenium RC来说可能是正确的,Selenium RC是Selenium 1.0中使用的基于JavaScript的技术。但是,完全基于JavaScript,意味着它仅限于浏览器的JavaScript沙箱,这会阻止浏览器中的某些操作。

Selenium 2.0引入了Selenium WebDriver,这是一种不同的Web自动化范例。 WebDriver尝试尽可能地模拟用户体验和操作。由于用户体验的建模决定了与元素交互的某些设计和技术选择,如果浏览器被最小化,它可能无法工作,因为用户在浏览器窗口最小化时无法与页面交互。

顺便说一下,如果找到元素是执行WebDriver代码的问题,我会感到惊讶。 与找到的元素交互,比如试图点击它们或向它们发送击键,我完全希望它会失败。