问题标签 [selenium-edgedriver]
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.
vba - 如何在 VBA 中自动更新 ChromeDriver 或 EdgeDriver?
我在网上搜索了自动“自动更新”我的 Selenium EdgeDriver 的解决方案。对于那些使用 SeleniumBasic 的人,您知道当您的主主机浏览器获得重大更新时,每隔一段时间手动从相应网页下载驱动程序可能会很麻烦。
在我的网络搜索中,我发现支持其他语言来“自动更新”他们的这些驱动程序的版本,但是像往常一样,VBA 缺乏支持。
现在我不认为这是完美的解决方案,但它至少有效。我将来可以看到的问题是每个网页的布局可能会发生变化,所以如果是这种情况,我欢迎更新,我也会尝试更新。但在大多数情况下,它应该可以正常工作。
虽然这是一个自我回答的问题,但我绝对希望看到这里发布的其他方法供我自己和其他用户尝试。SeleniumBasic 对于某些应用程序来说是一个很好的工具,但通常缺乏社区支持,因为 VBA 在社区中的使用不如其他语言那样广泛——至少在更复杂的水平上没有。
java - 边缘浏览器的 setExperimentalOptions
我能够在 Chrome 中更改下载位置,但是当我为 Edge 浏览器执行此操作时,EdgeOptions 不存在 setExperimentalOptions 方法。我正在使用 Selenium 3.141.59 Java。
java - 使用边缘浏览器在 selenium java 中选择用于身份验证弹出处理的证书
尝试登录启用 SSO 登录的应用程序。单击 SSO 登录按钮后,会在弹出窗口中要求选择登录用户。使用的浏览器是 Edge(91 版本)。试图处理警报类、驱动程序选项,但没有奏效。
任何人都可以提出任何解决方案。
c# - 为什么我在 Driver.FindElementsByCssSelector() 检索到的元素上得到 StaleElementReferenceException;
我使用 edge webdriver 在页面 (SPA) 上查找元素,并立即模拟点击。
但是,我收到 OpenQA.Selenium.StaleElementReferenceException: stale element reference: element is not attach to the page document。
如果元素在查找元素和单击之间被 SPA 框架重新呈现,我添加了一些重试逻辑,但仍然出现错误。
请注意,在重试块中,我得到了新的元素引用
java - 在 Selenium 4 中关闭来自 webdrivers 的浏览器日志记录
我正在开发一个 Java (11) 项目,我们需要使用 Edge-Chromium(通过 docker 容器在 Linux 上运行)进行一些测试,所以我不得不将我们正在使用的 Selenium 版本升级到 4.0 .0-beta-4。
我已经设法让这个位工作但是在升级时似乎当我现在运行任何类型的测试(本地或通过容器)时,日志充满了 GET/POST 请求,就好像浏览器本身正在输出它的所有跟踪级别的活动,包括看起来像是访问页面的内存转储(下面的示例,想象这个 x 500,这就是日志看起来完全难以辨认的样子):
这实际上影响了我使用过的所有浏览器(Edge、Chrome 和 Firefox),它们都输出相同的活动,这让我相信这与 Selenium 升级本身以及它附带的软件包有关,而不是专门针对 Edge。
到目前为止我已经尝试过:
- 从 4.0.0-alpha-7 到 4.0.0-beta-4 不同口味的 Selenium 4,似乎都有相同的结果。
- 传递日志记录首选项,无论我输入什么值,这些似乎都没有区别:
- 为 logback-test.xml 添加行以不报告硒的任何日志记录:
- 尽管此问题似乎与我遇到的问题略有不同,但此处概述的步骤。
唯一给我带来任何成功的事情是在 logback-test.xml 中设置以下内容,但它会禁用项目中添加的所有跟踪日志记录,这并不理想:
因为这特别是一个日志记录问题(其他一切都在工作)我觉得我错过了一个明显的记录器或 Selenium 4 中包含的项目,我只需要关闭它,但我无法弄清楚哪个记录器它是 -任何人有任何想法我可以找到这些信息或我需要抑制哪个记录器? 我的猜测是它与适当的浏览器驱动程序(例如 EdgeDriver)或 WebDriver 有关,但我认为应该通过关闭 org.openqa.selenium 来获取这些驱动程序。
c# - IE 模式下 Edge 的 C# Selenium 代码抛出 Selenium.WebDriverException - URL 的远程 WebDriver 服务器超时
我必须在IE 模式下使用 Selenium C# for Edge 浏览器自动化网站。以此为参考https://stackoverflow.com/a/63556157/3725706我编写的 C# selenium 控制台应用程序能够在 IE 模式下调用 Edge 浏览器。但是,30 秒后它会抛出以下异常:
OpenQA.Selenium.WebDriverException:'对 URL http://localhost:50949/session/9e037fd8-47f5-46c6-a25f-dd1089e53864/url 的远程 WebDriver 服务器的 HTTP 请求在 30 秒后超时。
下面是示例 C# Selenium 代码:
在本地运行代码时,它会在 IE 模式下打开 Edge 浏览器并打开 bing.com,但在这一行webDriver.Url = "http://www.bing.com";
中它会引发异常,并且不会执行进一步的代码。
我还尝试将 TimeSpan 时间增加到 180 秒,但仍然抛出相同的异常。根据我对 Stack Overflow 的多次搜索,我添加了额外的 ieOptions,例如ieOptions.EnableNativeEvents = false;
,ieOptions.PageLoadStrategy = PageLoadStrategy.Eager;
但所有结果都属于相同的异常。
任何人都可以帮助解决这个问题。以便执行测试用例。谢谢!
powershell - 如何使用 Powershell 中的 Edge Selenium webdriver 检查窗口是否最小化
有人会认为这应该是一件容易的事情,但我找不到一种方法来检测Chromium Edge Selenium webdriver Window 是否在 Powershell 中最小化。
具体来说,一个 Window 的大小和位置似乎是相同的,无论它是处于最大化还是最小化状态。例如,举个例子(从一个正常的非最小化窗口状态开始):
如您所见,即使窗口已最小化,窗口的大小和位置仍保持不变。
我在任何地方都找不到isMinimized()
方法或类似的东西。
Chromium Edge webdriver 版本是 93.0.961.38。
有任何想法吗?
serenity-bdd - Serenity 中是否有任何 Edge-Chromium 驱动程序首选项/功能可用于处理“您的连接不是私有的”/SSL 证书错误?
对于 Web 应用程序自动化,我使用 Serenity 和 Cucumber BDD 框架。通过自动化启动测试环境应用程序 URL 时,在所有浏览器驱动程序中收到“您的连接不是私有的”错误消息。由于 SSL 证书,我理解错误。我使用 serenity.conf 文件中的 chrome.switches 配置来处理它,以实现 chrome 浏览器自动化。但我需要在 Serenity farmework 的 Edge chromium 浏览器中处理相同的问题。我浏览了https://serenity-bdd.github.io/theserenitybook/latest/serenity-system-properties.html。我无法得到它。
任何人都对此有任何想法。
robotframework - 边缘驱动程序女士拒绝请求
背景:
我正在使用机器人框架+ msedgedriver进行e2e测试,我的环境是linux vm中的docker。所以我不能在这个 vm 中运行 msedgedriver windows 容器。我决定在远程 Windows vm 上运行 ms edge 驱动程序。
问题:
在我的 Windows Server 2016 中,我执行以下 cmd : msedgedriver.exe --whitelisted-ips=""
。
我将我的 pfsense 防火墙配置为将流量重定向到此主机,当我尝试连接到 msedgedriver 时,我收到以下错误:
在端口 9515 上启动 MSEdgeDriver 96.0.1033.0 (87d233ad01b7c17f5f53b7dac130e44d5d4b67d6) 允许所有远程连接。请改用许可名单!有关保持 MSEdgeDriver 安全的建议,请参阅 https://chromedriver.chromium.org/security-considerations。MSEdgeDriver 已成功启动。[1633362838.713][严重]:拒绝主机请求:ip_address:9515 地址:ip_address
我在客户端收到以下错误:
主机标头或源标头已指定且未列入白名单或 localhost。
PS:我已经使用--whitelisted-ips=''参数将我的 IP 地址添加到了白名单的 Ips 中,但我也尝试过allowed-origins=*
,但没有运气。
有什么想法吗?
java - 如何在我的 WebDriverFactory 上使用“AddArguments”实现 Edgewebdriver?
我需要在 Microsoft Edge 和 Opera 上运行我的睾丸。但我在任何地方都找不到如何做到这一点。我有这两种浏览器的驱动程序,并且知道我可以在哪里运行,但是配置它并不像我已经完成的那样比 Firefox 和 Chrome 容易。下面是我的 WebDriverFactory 类:
我是这样实现的,但是“AddArguments”功能不好,所以我必须发表评论。有人可以帮忙吗?