Вышел релиз Selenium 2.33

Выпущена очередная версия Selenium 2.33. Наиболее существенные изменения в этом релизе:

Firefox:

  • Добавлена поддержка нативных событий в Firefox 21. В итоге версия 2.33 поддерживает нативные события для версий 10esr, 17esr, 20, 21
  • Исправлена ошибка “Unable to bind to locking port 7054”, периодически возникающая при запуске достаточно большого количества браузеров параллельно
  • Реализована поддержка SVG-документов (а не только вставок SVG в обычные HTML-документы)

IE:

  • Улучшена реализация работы с мышью при установленной capability requireWindowFocus, если вы не запускаете несколько браузеров IE параллельно – рекомендуется использовать теперь эту capability
  • Реализована возможность указывать опции командной строки, которые должны использоваться при запуске браузера
  • Переделан механизм асинхронного выполнения JavaScript-кода, это позволяет теперь перехватывать в IE диалоговые окна (alerts), появляющиеся при выполнении фрагментов JavaScript, которые ранее блокировали выполнение тестов

Safari:

  • Переработана система сбора логов в браузере, теперь она доступна по кнопке с тулбара и собирает также логи из консоли ошибок JavaScript
  • А также реализован механизм удалённого доступа к логам через Logging API

Общее:

  • Удалён SelenseBackedWebDriver, который ранее использовался для запуска тестов в Safari, пока не было полноценного SafariDriver, но теперь он есть и “костыль” больше не нужен
  • Исправлено некоторое количество ошибок, связанных с видимостью элементов и автоскроллированием в блоках с overflow
  • Java: Удалён deprecated класс XPathLookupException, теперь вместо него используется более общий InvalidSelectorException
  • Java: Удалены все deprecated методы в интерфейсах Locatable и Coordinates
  • Ruby: Добавлена поддержка API для устройств с поворачивающимся экраном (rotatable)

Grid:

  • “Красивая” консоль, которая ранее была доступна по адресу /grid/beta/console, стала основной, старая консоль доступна по адресу /grid/old/console
  • Устранена утечка памяти в нодах, связанная с хранением большого количества логов в памяти
  • Добавлена проверка доступности нода перед попыткой создания сессии на нём, это позволяет игнорировать временно недоступные ноды
  • Реализована поддержка опции -log для нодов, которая позволяет перенаправить логи в файл (раньше опция тоже была, но не работала, логи всегда выводились на консоль)
  • Реализована возможность указания пути к исполняемому файлу Chrome при помощи capability chrome_binary
  • Реализовано использование по умолчанию протокола Selenium RC для нодов, которые запускаются в режиме -role rc

Поскольку к прошлому релизу 2.32 мы не опубликовали список изменений, упомянем здесь два наиболее важных (предыдущий релиз вообще содержал мало изменений):

  • Python: Реализована поддежка Python 3
  • HtmlUnit: Обновлён до версии 2.12 (и cssparser до версии 0.9.9) и внесены различные улучшения и исправления багов

Кроме того, недавно вышла также новая версия Selenium IDE 2.0

Решительное увеличение номера с 1.10 до 2.0 связано с добавлением возможности запускать тесты не только в текущем браузере, но и на Selenium Serever, это позволяет выполнять тесты в любом браузере, а не только в Firefox. Впрочем, пока эта возможность ещё имеет статус бета и может работать не стабильно, а также некоторые операции могут быть ещё не реализованы в таком способе запуска.