В чем разница между дистанционным управлением Selenium VS Webdriver?

StackOverflow https://stackoverflow.com/questions/4007819

Вопрос

Я не уверен, что я совсем понимаю разницу. WebDriver API также напрямую контролирует браузер выбора. Когда вы должны использовать дистанционное управление Selenium (Selenium RC) вместо этого?

Прямо сейчас моя текущая ситуация - я проверяю веб-приложение, написав люкс с API селена Webdriver и позволить ему работать на моем компьютере. Испытания занимают больше времени и дольше для завершения, поэтому я искал способы запуска тестов на сервере Linux.

Если я использую дистанционное управление Selenium, это означает, что я должен переписать все, что я написал с API WebDriver?

Я запутался с селеной сеткой, Гудзоном, селеном RC. Я нашел плагин сетки Selenium для HUDSON, но не уверен, что включает в себя Selenium RC.

Я беру правильный маршрут? Я представляю следующую архитектуру:

  • Хадсон работает на нескольких выделенных серверах Ubuntu.
  • HUDSON работает с плагином XVNC & Selenium. (Мне нужно установить Firefox отдельно?)
  • Селенская сетка работает тестовые апартаменты Selenium RC.

Я думаю, что это гораздо больше времени, чем запустить тест на моем текущем рабочем настольном компьютере с API WebDriver.

Это было полезно?

Решение

Насколько я понимаю, реализация Webdriver началась чуть позже, чем Selenium RC. С моей точки зрения, WebDriver является более гибким решением, что исправило некоторые раздражающие проблемы Seleniumrc.

WebDriver предоставляет стандартный интерфейс для тестирования веб-графического интерфейса. Существует несколько реализаций этого интерфейса (HTTP, BROWSER-SPEECTY и на основе Selenium). Так как у вас уже есть тесты WebDriver, вы должны быть знакомы с базовыми документами, такими как это

Испытания получают больше времени и дольше для завершения, поэтому я искал способы запуска тестов на сервере Linux.

Вы пытались найти фактические узкие места? Я не уверен, что устранение слоя Webdriver поможет. Я думаю, что в большинстве случаев потрачено в команды Selenium Commands, отправляющие и HTTP-запросы на систему недооценки.

Если я использую дистанционное управление Sleneium, это означает, что я должен переписать все, что я написал с WebDriver API?

Вообще, да. Если вы не реализовали дополнительный слой между тестами кода и WebDriver.

Что касается Selenium Grid: вы можете начать несколько экземпляров Selenium RC на нескольких различных [виртуальных] узлах, затем регистрируйте их в селениуме. Ваши тесты подключаются к селениуме, и он перенаправляет все команды для экземпляров Seleniumrc, координируя их в соответствии с необходимыми браузерами.

Для получения подробной информации о плагине Hudson вы можете найти больше информации здесь

Другие советы

Webdriver теперь селен 2. Основания кода селен и Webdriver объединяются. Webdriver получает в течение ряда проблем, которые Selenium и Selenium попадают в ряд вопросов, которые есть Webdriver.

Если вы написали тесты в Selenium One, вам не нужно переписать их работать с Selenium 2. Мы, основными разработчиками, написали его, чтобы создать экземпляр браузера и ввести, что в SELENIUM и тесты вашего селена 1 Работа в Selenium 2. Я поставил пример ниже для вас.

// You may use any WebDriver implementation. Firefox is used here as an example
WebDriver driver = new FirefoxDriver();

// A "base url", used by selenium to resolve relative URLs
String baseUrl = "http://www.google.com";

// Create the Selenium implementation
Selenium selenium = new WebDriverBackedSelenium(driver, baseUrl);

// Perform actions with selenium
selenium.open("http://www.google.com");
selenium.type("name=q", "cheese");
selenium.click("name=btnG");

Selenium 2 К сожалению, не был помещен в селен 2, но он не должен быть слишком длинным, пока он не будет добавлен, поскольку мы надеемся добраться до бета в ближайшие пару месяцев.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top