Используйте selenium с различными версиями браузеров
Привет,
Я пытаюсь сделать некоторые тесты с 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, он устанавливает 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(); }
Vibhav Ramcharan
Возможно, вы захотите посмотреть на использование Selenium Grid (SE), https://github.com/groupon/Selenium-Grid-Extras-да. SE позволяет управлять версией RemoteWebDriver/ChromeDriver для каждой тестовой машины / ПК с помощью файла json. Вы можете распространить один тест на несколько ПК (узлов).