【问题标题】:How can I run selenium scripts on Edge headless browser如何在 Edge 无头浏览器上运行 selenium 脚本
【发布时间】:2020-09-28 09:52:17
【问题描述】:

我想在 Edge 浏览器中以无头模式运行我的脚本。但我找不到任何合适的解决方案。 任何人都可以对此提出建议

【问题讨论】:

  • 您做了哪些研究却找不到任何帮助?谷歌是你的朋友我的朋友。尝试输入“edge selenium”

标签: selenium-webdriver automation microsoft-edge headless-browser selenium-edgedriver


【解决方案1】:

在这里,我假设您正在尝试自动化 MS Edge Chromium 浏览器,并且您希望在无头模式下在 MS Edge 浏览器上运行 selenium 测试。

您可以参考以下步骤。

  1. here 下载 Selenium 4.00-alpha05 的 Java/C# 绑定。

  2. this page下载匹配版本的Microsoft Edge Driver。

示例 C# 代码。

using OpenQA.Selenium.Edge;
using System.Threading;
namespace ecwebdriver
{
    public class edgewebdriver
    {
        static void Main(string[] args)
        {
            EdgeOptions edgeOptions = new EdgeOptions();
            edgeOptions.UseChromium = true;
            edgeOptions.BinaryLocation = @"C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe";
            edgeOptions.AddArgument("headless");
            edgeOptions.AddArgument("disable-gpu");
            var msedgedriverDir = @"E:\webdriver";
            var driver = new EdgeDriver(msedgedriverDir, edgeOptions);
            driver.Navigate().GoToUrl("<website url>");
            Thread.Sleep(3000);
            driver.Close();
        }
    }
}

JAVA示例代码:

package selenium_test;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.edge.*;

public class new_java_class 
{
        public static void main(String[] args) 
    {
         System.setProperty("webdriver.edge.driver","D:\\edgedriver_win64_83.0.478.45\\msedgedriver.exe");
         EdgeOptions op=new EdgeOptions();
                 op.addArguments("headless");
                 WebDriver browser = new EdgeDriver(op);
                 browser.get("https://microsoft.com");

    }
}

注意:以上代码中的路径和值可以根据自己的需要进行修改。

您可以在任何路径上下载 Selenium 4.00-alpha05。您需要通过 add External Jars 选项将其添加到您的 JAVA 项目中。

【讨论】:

  • 当我在我的框架中使用 Java 时,我可以在 Java 中获取 t 吗?使用此代码时出现错误。另外,我在哪个路径上下载 Selenium 4.00-alpha05 的 Java/C# 绑定
  • 请参考更新后的答案。我已经添加了 JAVA 代码示例。
  • 我无法为 edgeoptions 设置值。它说 UseChromium ,BinaryLocation 等不是edgeoptions的成员。任何想法?我已经正确地导入了 Imports OpenQA.Selenium.Edge
  • 如果在 IE 功能模式下启动,chromium Edge 是否支持无头执行?
  • 在 IE 模式下运行 Edge chromium-browser 会将整个浏览器置于 IE 模式。 IE 浏览器不支持无头执行。因此,当您尝试在 IE 模式下自动化 Edge chromium-browser 时,它也将不起作用。
猜你喜欢
  • 1970-01-01
  • 2020-09-27
  • 2013-06-08
  • 2021-05-20
  • 1970-01-01
  • 2022-01-10
  • 2017-08-12
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多