问题标签 [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.

0 投票
2 回答
838 浏览

javascript - C# Protractor AngularJS IEDriverServer Click() 异常“等待页面加载超时”

我正在使用 Protractor 测试我们的 AngularJS 应用程序(同时使用 Chrome 和 IE 驱动程序)。IEDriverServer 在大多数页面上都可以正常工作,除了这一页,几乎所有 Click() 事件都会导致“等待页面加载超时”异常。

IE驱动选项设置如下:

此外,IgnoreSynchronization = true。

编辑 1:我认为这个页面和其他页面的区别在于它使用了 Javascript SignalR。我在它的 head 部分中找到了此代码,而其他页面中没有。这可能是超时异常的原因吗?我该怎么做才能让它工作?

编辑 2:我将 ImplicitWait、SetPageLoadTimeout 和 SetScriptTimeout 设置多长时间并不重要。在指定的等待时间过后,单击事件将返回异常。

0 投票
1 回答
390 浏览

google-chrome - WebElement.Click() 在 Chrome 和 IE 驱动程序中不起作用

行动:

我想使用以下 xpath 检查复选框

我的 xpath 是正确的,也使用 chrome 开发人员工具进行了验证,但是在执行期间它没有单击复选框,我没有得到任何异常

同样它在 Firefox 驱动程序中完美运行,在 Chrome 和 IE 中无法运行,请帮助我如何解决这个问题

驱动依赖

0 投票
1 回答
1869 浏览

selenium - 使用 IEDriver 在 Selenium WebDriver 中自动接受下载

如何使用 InternetExplorerDriver 在 Selenium 中接受下载。
现在单击下载文件时,会出现另存为对话框,然后 WebDriver 停止工作。
我尝试搜索一种功能以在 ChromeDriver 中设置此功能只是添加chromedriver.AddUserProfilePreference("download.prompt_for_download", false);
但我没有找到。
我需要当驱动程序单击按钮下载时,下载会自动开始并保存在任何文件夹中。
对不起我的坏问题。我是新来的。

0 投票
0 回答
884 浏览

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)。

0 投票
1 回答
1744 浏览

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 日更新,包含更多屏幕截图和详细信息。我目前无权访问实际的应用程序代码,但如果这还不够,我可以请求访问。

这是我试图点击的链接的 HTML 代码: 在此处输入图像描述

这是我找到点击链接的测试代码(没什么花哨的):

在此处输入图像描述

当我通过此代码进行调试时,我可以看到链接已找到并成功单击(无异常)。屏幕上还有一条虚线环绕着所述链接。此代码在 Firefox 中有效,因此元素本身没有任何问题。但是,在 Firefox 中,在 Click() 操作之后,屏幕会按预期重新加载。在 IE11 中,除了那条虚线之外什么都没有发生。

在此处输入图像描述 在此处输入图像描述

我为 IE 添加了以下代码,调用了这个 ExeccuteScript 方法后,页面加载了预期的结果。

在此处输入图像描述

值得一提的是,这是单击该链接后应加载的结果页面。 在此处输入图像描述

0 投票
1 回答
228 浏览

selenium - Browserstack - IE 11 中的 NoSuchWindowException

我在 browserstack 上运行测试,对于IE 11,当它尝试查找元素时出现以下错误。

相同的测试在IE 10中成功运行。

代码:

例外:

我在尝试找到解决方案时遇到了以下帖子,但不确定如何在浏览器堆栈中设置此功能。

Selenium - IE 11 中的 NoSuchWindowException

0 投票
2 回答
1512 浏览

c# - 如何使用 Selenium 和 C# 选择 img 标签标题或 alt withing td

我有下表,有五列。在五列中,第 5 列具有随后端数据随机变化的图像图标。图像没有静态的 id 或类。

在此处输入图像描述

CSS如下:

在此处输入图像描述

使用下面的代码,我可以获得第 4 列文本。

我试图获取图像标签alttitle使用以下代码,但它返回 null。

我正在尝试获取titlealt重视临时变量。此外,我必须根据值将控制转移到不同的方法。

0 投票
1 回答
836 浏览

selenium - 是否可以在 InternetExplorerDriver 中截取页面可见部分的屏幕截图?

我需要只截取 IEDriver 中页面的可见部分,以便与其他驱动程序保持一致。对于其他驱动程序,我使用“滚动和缝合”方法来获取全高页面图像,但在某些情况下可能存在差异 - 例如,如果页面具有粘性标题。我宁愿采用一种或另一种方式,但对所有驱动程序都一样,并且并非所有驱动程序都提供截取整页屏幕截图的能力。

TakesScreenshot 接口的文档说明了这一点:

对于扩展 TakesScreenshot 的 WebDriver,这将尽最大努力根据浏览器按优先顺序返回以下内容:

  • 整个页面
  • 当前窗口
  • 当前帧的可见部分
  • 包含浏览器的整个显示的屏幕截图

我的问题是:

是否可以强制 Internet Explorer 仅截取当前窗口的屏幕截图?我知道通过 API 是不可能的,但也许有一些自定义功能或内部驱动程序设置可以更改?

0 投票
1 回答
472 浏览

c# - 打开 IE 浏览器并“连接”到现有的 IEDriverServer

我以不同的用户身份运行 IEDriverServer。

我想打开 IE 浏览器,但是将它“连接”到我刚刚打开的现有驱动程序。

当调用 to 时InternetExplorerDriver,它会打开一个新的驱动程序会话(当然),而前一个会话在识别元素等方面没有任何意义。

我可以将浏览器连接到现有的InternetExplorerDriver吗?

0 投票
2 回答
1926 浏览

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: