我正在使用
Selenium独立服务器 - 2.25.0
IE - 8.0.6001.18702(32位)
IEDriverServer - 2.25.1.0
Java - SDK6
OS - Win Xp 32位
代码:
System.setProperty("webdriver.ie.driver", "Path to IEDriverServer.exe");
driver.get("http://www.naukri.com/");
// Used Wait before entering text.
driver.findElement(By.id("qp")).clear();
driver.findElement(By.id("qp")).sendKeys("java j2ee");
driver.findElement(By.id("ql")).clear();
driver.findElement(By.id("ql")).sendKeys("chennai");
driver.findElement(By.linkText("Create a new Job Alert")).click();
我使用上面的代码来启动IE8。我能够在IE中成功启动并打开应用程序。但是,之后我无法对打开的网页进行任何操作。
我做了以上所有,我阅读了很多论坛,但我没有得到答案。
我使用相同的代码并在另一台机器上运行。它在那里工作正常。第二台机器配置是
Selenium独立服务器 - 2.25.0
IE - 8.0.7601.17514(64位)
IEDriverServer - 2.25.1.0
Java - SDK7
OS - Win 7专业
我不知道究竟是什么问题?我试图找到根本原因,但我不是。
请帮我解决这个问题
提前谢谢......
答案 0 :(得分:1)
需要考虑的一些事情:
更新Selenium,它位于 v2.28 。
切换到使用 Chrome 或 Firefox 驱动程序,查看是否存在IED驱动程序或其他问题。
您也误解了IE的“保护模式”意味着什么。你正在破坏安全区域,这是不同的。
参考此图片:
http://www.ivertech.com/images/internetExplorer7/IE7UncheckEnableProtectedModeCheckBox.gif
每个区域都有自己的保护模式设置。取消选中所有区域。
如果你没有那个复选框,那么有两件事:它可能被你的IT管理员禁用了,如果你有一个,因此我们无能为力 - 你必须与你的IT团队交流,< strong>和屏幕截图,以显示您所做的。
而不是使用隐式超时,实际上将其包装在WebDriverWait
条件中:
如果在合理的超时(1分钟)后失败,那么我们就知道其他错误了。不要使用隐式等待函数。
另外,看看你是否可以用不同的方式获取元素,例如使用这个CSS选择器:
input.w327