动态地将硒与不同的浏览器版本一起使用

时间:2018-08-05 18:48:48

标签: c# selenium selenium-webdriver selenium-chromedriver

我正在尝试使用Selenium进行一些测试,但是我注意到ChromeDriver取决于浏览器版本。在文档页面上就是这样:

  

Chrome 63-65适用于chromedriver 2.36 Chrome 62-64适用于   chromedriver 2.35 Chrome 61-63与chromedriver 2.34 Chrome兼容   60-62适用于chromedriver 2.33 Chrome> 57,请使用chromedriver 2.28   Chrome> 54,使用chromedriver 2.25 Chrome = 53,使用chromedriver 2.24   Chrome> 49,使用chromedriver 2.22 Chrome> 43,使用chromedriver 2.20   Chrome> 41,使用chromedriver 2.15旧版本,使用chromedriver   2.10

那么,是否可以使用多个浏览器版本并动态设置ChromeDriver? 就像,如果我在装有Chrome 56的PC上运行测试,它将ChromeDriver设置为v2.25。如果我在装有Chrome 61的计算机上运行测试,则会将ChromeDriver设置为v2.33。

怎么可能?

我正在尝试使用以下代码测试ChromeDriver的初始化:

private void inicializeChrome()
{
    ChromeOptions chromeOptions = new ChromeOptions();
    chromeOptions.AddArgument("--silent");
    //chromeOptions.AddArgument("--log-level=3");
    //chromeOptions.AddArguments("--disable-extensions");
    //chromeOptions.AddArgument("test-type");
    chromeOptions.AddArgument("--ignore-certificate-errors");
    chromeOptions.AddArgument("no-sandbox");
    //chromeOptions.AddArgument("--headless");//hide browser

    ChromeDriverService chromeService = ChromeDriverService.CreateDefaultService();
    chromeService.SuppressInitialDiagnosticInformation = true;
    chromeService.HideCommandPromptWindow = true;

    driver = new ChromeDriver(chromeService, chromeOptions);

    ICapabilities capabilities = ((RemoteWebDriver)driver).Capabilities;

    driver.Manage().Window.Maximize();
}

还有另一个问题涉及ChromeDriver版本的错误,但是我想要的是一种动态设置ChromeDriver Versioin的方法,换句话说,我在代码中放入了4个或5个不同的ChromeDriver,并根据Chrome版本。

0 个答案:

没有答案