C# 中的硒网格

Selenium Grid in C#

我正在尝试 运行 在另一台本地机器上进行测试,但我总是以失败告终!我看过在 JAVA 中成功实施的视频,但我正在尝试通过 c# 来实现。

非常感谢任何想法!

public class Driver
{ 
    public static IWebDriver Instance { get; set; }

    public static void Initialize()
    {
        IWebDriver driver;
        driver = new ChromeDriver();

        DesiredCapabilities capabilities = new DesiredCapabilities();
        capabilities = DesiredCapabilities.Chrome();
        capabilities.SetCapability(CapabilityType.BrowserName, "chrome");
        capabilities.SetCapability(CapabilityType.Platform, new Platform(PlatformType.Windows));


        driver = new RemoteWebDriver(new Uri("http://localhost:4446/wd/hub"), capabilities);
    }
    public static void Close()
    {
        Instance.Dispose();
        Instance = null;
    }
  1. 您应该使用您的网格实例的远程 uri 而不是本地,并确保您至少在一个节点上安装了 chrome。如果你想在本地使用 selenium 网格,首先使用 selenium-server-standalone.jar 启动本地集线器。您应该使用来自 here

  2. 的信息
  3. 另外你不需要这个代码:

    driver = new ChromeDriver();` - you need RemoteWebDriver directly
    
  4. 对我来说,这段代码非常有效:

    var uri = 'uri_to_your_grid_hub';
    var capabilities =  new ChromeOptions().ToCapabilities();
    var commandTimeout = TimeSpan.FromMinutes(5);
    var driver = new RemoteWebDriver(new Uri(uri),capabilities,commandTimeout)