2

Я занимаюсь настройкой тестирования для приложения, но я изо всех сил стараюсь правильно понять селен.Selenium testing understanding

Может ли кто-нибудь объяснить значение веб-драйвера селена и селенового сервера?

Я вижу, что его обычное тестирование с использованием мокко в качестве рамки, а затем с помощью селен-webdriver и сервера.

Но недавно я прочитал о новых фреймворках, таких как intern.js, которые не требуют сервера селена, только chromedriver. Итак, хромированная решетка - только часть веб-селена селена, которая была извлечена?

Имея проблемы со зрением, как все они подходят.

ответ

2

Все Селен 2/WebDriver серверы (ChromeDriver, MicrosoftWebDriver, GhostDriver и т.д.) номинально говорят то же самое WebDriver protocol. Итак, когда ваше тестовое программное обеспечение пытается подключиться к серверу WebDriver, не имеет значения, является ли сервер на другом конце Selenium, ChromeDriver или BrowserStack или что-то еще, поскольку все они говорят на одном стандартизированном API WebDriver.

Программное обеспечение Селен Сервер обеспечивает два важных дополнительных функций, которые не существуют, если вы просто подключить непосредственно к ChromeDriver:

  1. В то время как ChromeDriver только позволяет взаимодействовать с Chrome, Селен сервер позволяет взаимодействовать с несколькими браузерами при одновременном подключении к одной конечной точке HTTP. Когда вы используете сервер Selenium, он позволяет различным браузерам регистрироваться сам по себе, поэтому, когда вы запрашиваете, например, Firefox, сервер Selenium найдет доступный экземпляр Firefox для вашего запроса и затем проксирует весь трафик для этого сеанса в и из этого браузера.

  2. Сервер Selenium поддерживает перевод в/из других систем автоматизации браузера, которые не говорят API WebDriver изначально, такие как Mozilla's Marionette (которая использовала/использует собственный протокол TCP) и старый IEDriverServer.

Что касается ChromeDriver конкретно: Исторически реализации Селен для каждого браузера были написаны команды Selenium, но теперь, когда WebDriver является новым стандартом, производители браузеров становятся ответственны за написание своих собственных реализаций WebDriver вместо того, чтобы оставить которые работают в команде Selenium. Где FirefoxDriver и IEDriverServer в настоящее время по-прежнему поддерживается командой Selenium, ChromeDriver разрабатывается самостоятельно командой Chrome, и в будущем каждый поставщик браузеров, надеюсь, предоставит свои собственные услуги WebDriver.

+0

Спасибо, что это прояснилось! Мне не удалось найти информацию о том, как они связаны. – Elliot