Вышла версия Selenium 2.25

И вновь сразу же после обновления браузера Firefox до версии 14 вышла новая версия Selenium 2.25, в которой реализована поддержка обновленного браузера. Но в отличие от версии 2.24, содержащей только исправления нескольких багов, в версии 2.25 имеется немало нововведений.

  • Реализована поддержка native-событий для браузера Firefox 14 и синтетических событий для Firefox 17
  • Реализована экспериментальная поддержка синтетических событий в браузере Internet Explorer
  • Реализована возможность указания, что следует делать с неожиданными alert’ами – добавлен параметр (capability) unexpectedAlertBehaviour, который может принимать значения accept, dismiss или ignore (пока поддерживается только в Firefox)
  • Улучшена поддержка автоскроллирования и определения видимости для элементов, имеющих различные значения стиля overflow
  • Реализована возможность удаленного останова Selenium Hub при помощи команды /lifecycle-manager?action=shutdown
  • Реализована возможность указания “требуемых” свойств браузера requiredCapabilities при удаленном вызове, тогда как ранее была только возможность указания “желаемых” свойств браузера desiredCapabilities. Отличие заключается в том, что если нет браузера с “требуемыми” свойствами, выбрасывается исключение SessionNotCreatedException, а если нет браузера с “желаемыми” свойствами, запускается “наиболее подходящий”, а если совсем ничего не подходит – запускается хоть какой-нибудь, что иногда бывает весьма неожиданно :)
  • Переделана реализация поддержки SSL-сертификатов в Selenium Server с целью повышения производительности (вероятно, реализация будет ещё меняться, потому что производительность всё ещё недостаточна)

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

  • Это последняя версия, где используется загрузка IEDriver через DLL, начиная с версии 2.26 эта возможность будет удалена, необходимо будет использовать IEDriverServer.exe
  • Классы FirefoxWebElement и InternetExplorerWebElement объявлены deprecated, в следующей версии они будут удалены, если они используются у вас в коде – вместо них следует использовать общий класс RemoteWebElement