Настройка Selenium для записи, а также запуск в разных браузерах и платформах

#testing #ubuntu #selenium-rc #selenium-ide #recording

#тестирование #ubuntu #selenium-rc #selenium-ide #запись

Вопрос:

Я хотел бы настроить сервер Selenium, чтобы клиенты могли записывать тесты локально, записанные тесты можно воспроизводить и тестировать на сервере Ubuntu с Firefox Chrome.

К сожалению, сайт Selenium настолько запутан и упоминает так много разных проектов (Selenium 1, Selenium 2, Selenium RC, Selenium Grid), что я не уверен, с чего начать.

Как мне настроить Selenium Server на Ubuntu box?

Комментарии:

1. TestProject проще записывать тесты и запускать в разных браузерах, а также на разных платформах / ОС: link.testproject.io/7so

Ответ №1:

К сожалению, сайт Selenium настолько запутан и упоминает так много разных проектов (Selenium 1, Selenium 2, Selenium RC, Selenium Grid), что я не уверен, с чего начать.

Selenium имеет несколько версий

  1. IDE — в основном для записи теста и его воспроизведения. В основном это дополнение для Firefox. Это можно использовать для самого простого тестирования. Вы также можете экспортировать записанный тест в selenium RC. Все эти упомянутые в seleniumhq.org -> раздел документации:http://docs.seleniumhq.org/docs

  2. RC — Как и любой другой инструмент автоматизации, вы можете написать свой собственный код для запуска теста, а не просто записывать и воспроизводить его. Это приложение обладает гораздо лучшими возможностями, чем IDE, включая поддержку нескольких языков (Java, Javascript, Ruby, PHP, Python, Perl и C #) и поддержку практически всех существующих браузеров на различных платформах.

  3. Сетка — Это помогает в параллельном выполнении нескольких тестов.

Записать и запустить тест в Firefox (НЕ CHROME) очень просто. Для этого не требуется запуск сервера selenium.

  1. запишите весь тест

  2. сохраните это в файле

  3. Скопируйте файл на компьютер Ubuntu

  4. Откройте тот же тест с помощью IDE на компьютере Ubuntu и запустите его снова в firefox

Если вы хотите работать в Chrome, то вам нужно перейти на следующий уровень использования selenium RC. И для этого требуется запущенный сервер selenium.

Как мне настроить Selenium Server на Ubuntu box

Загрузите selenium-server jar отсюда. Скопируйте это в любой каталог на вашем сервере Ubuntu

Откройте терминал и перейдите к папке, в которой находится файл selenium server jar.

Введите java -jar selenium-server-jarfilename.jar

Сервер Selenium по умолчанию запустится с порта 4444 и продолжит прослушивание тестов.

Комментарии:

1. да, но вы описали, как запустить server one, но не как установить его как системную службу? есть ли где-нибудь в Интернете какие-либо материалы, описывающие лучшие практики установки веб-сервера Selenium в качестве сервиса?

Ответ №2:

Сайт сбивает с толку с точки зрения управления версиями и названий. Selenium — это название всего проекта, который начинался как Selenium RC (дистанционное управление). Selenium RC — это старая версия API, которую также иногда называют Selenium 1. Selenium 2 — это новейшая версия, и последний релиз Selenium RC2 (release candidate) был выпущен на прошлой неделе. Здесь используется API, отличный от Selenium RC. Новый API известен как WebDriver. Новый API по-прежнему позволяет вам получить доступ к более старому Selenium RC, но только для обеспечения обратной совместимости.

Поскольку вы начинаете сейчас, у вас нет причин использовать Selenium RC API. Вместо этого вам следует использовать расширенные возможности взаимодействия с пользователем, которые являются частью WebDriver. Настройка WebDriver довольно проста, и здесь есть неплохое руководство по этому вопросу. Следует отметить, что используемый там API соответствует более старому стандарту (бета-версия 2.0), который использует WebElements. Новый API (расширенные возможности взаимодействия с пользователем) значительно больше отделяет действия от элементов, с которыми они выполняются. Я бы рекомендовал вам использовать последние версии API, которые активно поддерживаются, а не старые устаревшие версии.

Поскольку вы хотите сделать все это локально, второй ссылки, которую я вам дал, должно быть достаточно, чтобы начать работу. Предполагая, что вы собираетесь использовать привязки Java, это так просто, как:

 public class Selenium2Example  {
    public static void main(String[] args) {
        // Create a new instance of the Firefox driver
        // Notice that the remainder of the code relies on the interface, 
        // not the implementation.
        WebDriver driver = new FirefoxDriver();

        // And now use this to visit Google
        driver.get("http://www.google.com");
        Actions builder = new Actions( driver );
        builder.sendKeys( driver.findElement( By.name("q") ), "Cheese!" );

        Action action = builder.build();
        action.perform();

        //Close the browser
        driver.quit();
    }
}
  

Это пример кода, отредактированного для использования расширенных пользовательских взаимодействий.

Ответ №3:

Для написания и выполнения тестов selenium у вас должны быть две вещи.

1) Сервер Selenium также известен как Selenium RC (дистанционное управление). Вы можете перейти по этой ссылке и загрузить Selenium Server. Вы можете запустить selenium server с помощью команды java -jar ur_selenium_server.jar

2) Драйвер клиента: Используя client-driver, вы можете кодировать тесты selenium. Оно состоит из комбинации команд selenium, которые выполняют определенные действия в пользовательском интерфейсе. Например, для щелчка, выбора и т.д. Selenium поддерживает множество различных языковых привязок для клиент-драйвера. Загрузите соответствующий клиент-драйвер для предпочитаемого вами языка со страницы загрузки выше.

Вы можете обратиться к API-интерфейсам клиентских драйверов и закодировать свои тесты.

Надеюсь, это поможет

Комментарии:

1. Спасибо, так могу ли я записать тесты с помощью плагина Firefox и воспроизвести их на сервере Selenium? как клиентский драйвер вписывается в это?