...как самостоятельно собрать Selenium из исходников?
Image source: ZOOB

...как самостоятельно собрать Selenium из исходников?

Краткая инструкция по сборке Selenium:

Всё, можно пользоваться.

А теперь всё то же самое, но более подробно.

0. Зачем?

Вот именно, зачем? Зачем вообще надо собирать Selenium из исходников? Ведь можно просто взять готовый дистрибутив и использовать его.

Да, большинству пользователей в большинстве случаев именно так и надо делать – использовать готовый дистрибутив. Но иногда хочется, знаете, чего-то такого…

Например, вот прямо сейчас, в тот момент, когда я пишу эту заметку, “релизная” версия Selenium ещё не позволяет запускать тесты в новых версиях браузера Opera, которые построены на движке Blink, а если собрать Selenium из исходников – это уже можно делать.

Или, скажем, вышло предупреждение, что Apache HttpClient версий до 4.3.6 содержит потенциальную уязвимость, а вы очень беспокоитесь по поводу защищенности тестового стенда – это уже исправлено, но новый релиз будет ещё не скоро.

Ну или вы набрались решимости самостоятельно исправить какой-нибудь баг в Selenium, который вам ужасно мешает, а ленивые разработчики Selenium почему-то его игнорируют (видимо, им не мешает).

В общем, хочется иногда. Эта заметка именно для тех, кому хочется.

1. Установить Java SDK

Это подробно описано в инструкции по установке Java, только обратите внимание, что для сборки Selenium потребуется Java SDK, а не JRE.

2. Установить клиент Git

Клиентов Git много, на любой вкус и цвет, но лично я предпочитаю либо консольный, либо GUI-клиент Git Extensions, именно он дальше будет показан на скриншотах.

3. Клонировать репозиторий Selenium

Существует два репозитория, в которых хранится код Selenium, они синхронизируются раз в несколько минут, и можно клонировать любой из них:

Запускаем клиент Git Extensions и жмём там кнопку-ссылку Clone repository:

Указываем адрес репозитория, локальную директорию, в которую его нужно клонировать, и жмём кнопку Clone:

Репозиторий достаточно объёмный, поэтому тут придётся немного подождать, можно успеть выпить кофе перед следующим весьма ответственным шагом.

4. Выполнить сборку Selenium

Запускаем консоль (cmd), переходим в ту директорию, в которую был клонирован репозиторий командой cd c:\temp\selenium и там выполняем команду go release:

Тут придётся подождать ещё дольше (хотя, конечно, не так долго, как если бы вы собирали Firefox или Chromium из исходников)…

Во время сборки из интернета будут загружаться четыре версии Gecko SDK. Они нужны для того, чтобы скомпилировать библиотеки для поддержки нативных событий в браузере Firefoх (что это такое - я расскажу как-нибудь потом). На самом деле, если у вас не установлен на машине компилятор для языка C, эти библиотеки скомпилироваться не смогут. Вместо них будут использованы предварительно собранные версии библиотек, которые уже есть в репозитории. Но четыре версии Gecko SDK всё равно скачаются. Когда-нибудь мы это оптимизируем. Может быть.

В общем, если подождать достаточно долго, то этот процесс завершится, и в подкаталоге buid\dist вы найдёте собранный файл selenium-server-standalone-2.44.0.jar (на момент написания версии номер версии именно такой, в будущем, понятно, он будет отличаться).

Это и есть готовый дистрибутив, который содержит всё необходимое для разработки тестов на Java с использованием Selenium, а также Selenium Server.

Вот и всё.

Ну, или почти всё, потому что ещё есть библиотеки для C#, Ruby и Python, которые собираются немного иначе. Но это уже совсем другая история.


Алексей Баранцев

Автор:

Если вам понравилась эта статья, вы можете поделиться ею в социальных сетях (кнопочки ниже), а потом вернуться на главную страницу блога и почитать другие мои статьи.
Ну а если вы не согласны с чем-то или хотите что-нибудь дополнить – оставьте комментарий ниже, может быть это послужит поводом для написания новой интересной статьи.

Мои тренинги
А ещё есть? Конечно!