问题标签 [selenium-iedriver]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - C# Protractor AngularJS IEDriverServer Click() 异常“等待页面加载超时”
我正在使用 Protractor 测试我们的 AngularJS 应用程序(同时使用 Chrome 和 IE 驱动程序)。IEDriverServer 在大多数页面上都可以正常工作,除了这一页,几乎所有 Click() 事件都会导致“等待页面加载超时”异常。
IE驱动选项设置如下:
此外,IgnoreSynchronization = true。
编辑 1:我认为这个页面和其他页面的区别在于它使用了 Javascript SignalR。我在它的 head 部分中找到了此代码,而其他页面中没有。这可能是超时异常的原因吗?我该怎么做才能让它工作?
编辑 2:我将 ImplicitWait、SetPageLoadTimeout 和 SetScriptTimeout 设置多长时间并不重要。在指定的等待时间过后,单击事件将返回异常。
google-chrome - WebElement.Click() 在 Chrome 和 IE 驱动程序中不起作用
行动:
我想使用以下 xpath 检查复选框
我的 xpath 是正确的,也使用 chrome 开发人员工具进行了验证,但是在执行期间它没有单击复选框,我没有得到任何异常
同样它在 Firefox 驱动程序中完美运行,在 Chrome 和 IE 中无法运行,请帮助我如何解决这个问题
驱动依赖
selenium - 使用 IEDriver 在 Selenium WebDriver 中自动接受下载
如何使用 InternetExplorerDriver 在 Selenium 中接受下载。
现在单击下载文件时,会出现另存为对话框,然后 WebDriver 停止工作。
我尝试搜索一种功能以在 ChromeDriver 中设置此功能只是添加chromedriver.AddUserProfilePreference("download.prompt_for_download", false);
但我没有找到。
我需要当驱动程序单击按钮下载时,下载会自动开始并保存在任何文件夹中。
对不起我的坏问题。我是新来的。
java - 32bit IEDriverServer.exe 在 Windows 10 (Java Selenium) 中实例化 64bit IE
我找不到其他人遇到这个问题,所以我一直觉得我必须在这里遗漏一些东西。我们的框架在 Win7 上运行良好,我们现在正在尝试测试我们的脚本以确保它们也能在 Windows 10 中运行。
我们使用的是 32 位 IEDriverServer.exe,但在 Windows 10 中,它启动的是 64 位版本的 IE,而不是 32 位版本。如果您阅读有关 IEDriverServer.exe 的文档,它会说 32 位版本将打开 32 位版本的 IE,反之亦然,对于 64 位 IEDriverserver.exe。
有谁知道为什么在 Windows 10 上,我们看到 64 位版本的 IE 打开?(不是边缘,而是 Windows 10 上的 IE11)。
javascript - Selenium WebDriver IEDriverServer 点击链接 Javascript doPostBack
我正在测试一个 ASP.NET 应用程序,该应用程序有很多在其 href 中调用 Javascript doPostBack 的链接,如下所示:
Selenium WebDriver element.Click() 方法仅适用于 Firefox。对于 IEDriverServer,单击链接后没有任何反应。
我开始用谷歌搜索,看起来 Javascript 操作实际上并没有用 Click() 方法调用,我能找到的唯一建议是像这样使用 IJavaScriptExecutor(这行得通):
这发生在 Windows 7 和 Windows 8.1 上的 IE11 上。我还没有尝试过 Windows 10。
有没有其他解决方案,因为我有很多这样的链接来修改代码:( :( :(
==================================================== ====================== 2017 年 1 月 22 日更新,包含更多屏幕截图和详细信息。我目前无权访问实际的应用程序代码,但如果这还不够,我可以请求访问。
这是我找到点击链接的测试代码(没什么花哨的):
当我通过此代码进行调试时,我可以看到链接已找到并成功单击(无异常)。屏幕上还有一条虚线环绕着所述链接。此代码在 Firefox 中有效,因此元素本身没有任何问题。但是,在 Firefox 中,在 Click() 操作之后,屏幕会按预期重新加载。在 IE11 中,除了那条虚线之外什么都没有发生。
我为 IE 添加了以下代码,调用了这个 ExeccuteScript 方法后,页面加载了预期的结果。
selenium - Browserstack - IE 11 中的 NoSuchWindowException
我在 browserstack 上运行测试,对于IE 11,当它尝试查找元素时出现以下错误。
相同的测试在IE 10中成功运行。
代码:
例外:
我在尝试找到解决方案时遇到了以下帖子,但不确定如何在浏览器堆栈中设置此功能。
selenium - 是否可以在 InternetExplorerDriver 中截取页面可见部分的屏幕截图?
我需要只截取 IEDriver 中页面的可见部分,以便与其他驱动程序保持一致。对于其他驱动程序,我使用“滚动和缝合”方法来获取全高页面图像,但在某些情况下可能存在差异 - 例如,如果页面具有粘性标题。我宁愿采用一种或另一种方式,但对所有驱动程序都一样,并且并非所有驱动程序都提供截取整页屏幕截图的能力。
TakesScreenshot 接口的文档说明了这一点:
对于扩展 TakesScreenshot 的 WebDriver,这将尽最大努力根据浏览器按优先顺序返回以下内容:
- 整个页面
- 当前窗口
- 当前帧的可见部分
- 包含浏览器的整个显示的屏幕截图
我的问题是:
是否可以强制 Internet Explorer 仅截取当前窗口的屏幕截图?我知道通过 API 是不可能的,但也许有一些自定义功能或内部驱动程序设置可以更改?
c# - 打开 IE 浏览器并“连接”到现有的 IEDriverServer
我以不同的用户身份运行 IEDriverServer。
我想打开 IE 浏览器,但是将它“连接”到我刚刚打开的现有驱动程序。
当调用 to 时InternetExplorerDriver
,它会打开一个新的驱动程序会话(当然),而前一个会话在识别元素等方面没有任何意义。
我可以将浏览器连接到现有的InternetExplorerDriver
吗?
python - Selenium 3.0.1 with IE11 not finding elements on Windows 10 (Works fine on Windows 7 with IE11)
- OS: Windows 10
- Browser: IE11
- Selenium (Python) package: 3.0.1
- IEWebDriverServer.exe: 3.1.0
We are getting ready to migrate our automation nodes to Windows 10 and during our tests, we found that although our scripts work fine on Win7 on FF, IE, and Chrome, they fail on Windows 10 only for IE (works fine for FF and Chrome).
When running agianst IE, the browser instantiates and webdriver is able to see the browser (I tried a simple command such as driver.back() which returns to previous page). However, we cannot get any find_element... calls to work. Whether it be by id, name, css, xpath, etc. The script will just fail stating that no element was found for the given id/name/css/xpath (whatever method I tried to use to find the webelement).
I have seen posts regarding security updates that broke this and suggesting to revert the update. This was a year ago though and it seems subsequent updates have fixed this issue.
I have also read posts about making sure the protected mode is the same across all zones, a registry value, etc. None of these suggestions have worked though.
Here is the sample script I am using which (when modified to run in Chrome or Firefox passes) does not work in IE11 only:
The error from running this script is: