我在IE 8 64位浏览器上运行的机器人框架存在问题。我试图在IE上运行测试,脚本失败,因为它给出了一个错误。请在报告中找到错误。这是因为IE中的安全设置吗?如果我将其设为常见的安全级别区域,则浏览器行为会有所不同。就像它最小化和最大化浏览器并失败特定测试。 Here is the link截图。据我所知,它还取决于xpaths / css / javascript属性。它与其他两个浏览器chrome / firefox运行良好。所以请向我建议,问题是什么,请找到cmd错误消息。
答案 0 :(得分:1)
确保IE安全设置级别相同。 例如:滑块设置为中,所有3个滑块。 我也发现了这个问题,并将它们设置为相同的设置,它似乎再次起作用。
我假设您正在使用机器人框架的硒?
答案 1 :(得分:1)
我遇到了同样的问题,因为我的网络环境非常“敌对”,我不得不处理NTLM代理和有限的访问策略。
要解决此问题,必须正确设置 no_proxy
和 webdriver.ie.driver
环境变量:
Set Environment Variable no_proxy 127.0.0.1
Set Environment Variable webdriver.ie.driver ${local_ie_driver}
...在你打开IE之前,就像在这个小例子中一样:
*** Settings ***
Library Selenium2Library
Library OperatingSystem
*** Variables ***
${url_google} http://www.google.com/
${local_ie_driver} D:${/}PortableApps${/}SeleniumIEWebDriver${/}IEDriverServer.exe
*** Test Cases ***
Google for macarronada using IE
Set Environment Variable no_proxy 127.0.0.1
Set Environment Variable webdriver.ie.driver ${local_ie_driver}
Open Browser ${url_google} ie
Wait Until Page Contains Google
Input Text id=lst-ib macarronada
Click Button name=btnG
Wait Until Page Contains macarronada
Close Browser
希望它可以帮到你。
答案 2 :(得分:0)
错误消息告诉您问题是什么,以及解决方法是什么:
所有区域的保护模式设置都不相同。保护模式 必须为所有区域设置相同的值(启用或禁用)
要解决此问题,您必须更改安全设置,以便所有区域都启用了保护模式,或者它们都将其关闭。转到“Internet选项”控制面板,选择安全选项卡,然后确保选中"启用保护模式"对于所有区域都是相同的。
这是在IE驱动程序github页面上记录的:https://code.google.com/p/selenium/wiki/InternetExplorerDriver#Required_Configuration
答案 3 :(得分:0)
您应该将您的iedriver
名称更改为(IEDriverServer.exe
)同名的Chrome(chromedriver.exe
)
答案 4 :(得分:-1)
尝试在保护模式设置中为每个区域保留相同的值。
要设置保护模式设置,请从“工具”菜单中选择“Internet选项”,然后单击“安全”选项卡。对于每个区域,标签底部将显示一个标记为“启用保护模式”的复选框。应为每个区域选中或取消选中此复选框。
只要每个区域(Internet,本地Intranet,受信任的站点,受限制的站点)都相同,就可以启用或禁用此值。建议将其保持为启用状态,因为取消选中它会使您的计算机面临风险。
上述解决方案对我们有用。
原因 - 似乎浏览器正在检测第二个窗口或其URL作为潜在的安全威胁,并且正在运行具有极大限制权限的Internet Explorer进程。因为RobotFramework(Selenium2Library)无法检测到第二个窗口。
谢谢和问候,
Ryan M