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

Наконец-то после продолжительной и упорной борьбы с сервером непрерывной интеграции удалось выпустить релиз Selenium 2.46.

Главные изменения в этом релизе связаны, как обычно, с браузером Firefox (потому что он чаще всех обновляется, и при этом нередко нарушается обратная совместимость):

  • решена проблема снижения производительности в Firefox 37 (и более новых версиях)
  • решена проблема падения браузера на старте в Firefox 38 (и более новых версиях)
  • прекращены падения Firefox в модуле plugin-container при выполнении команды quit

А теперь о других значимых изменениях:

  • нативные события теперь поддерживаются только в версии Firefox 31 (и вероятнее всего вскоре вообще перестанут поддерживаться)
  • разрешено работать с “прозрачными” файловыми полями ввода
  • полностью удалена поддержка “старых” версий Opera (работающих на движке Presto)
  • HtmlUnitDriver обновлён до версии HtmlUnit 2.17, для использования требуется Java 7
  • устранена критичная проблема, приводившая к падению сервера, если подключается драйвер, собранный для более новой версии Java, чем та, которая используется для запуска сервера, в частности, HtmlUnit собран для Java 7, и это вызывало падения сервера, если для запуска используется Java 6
  • в реализации на Java появилась бета (хотя на самом деле скорее альфа :)) версия MarionetteDriver, но более или менее нормально использовать её можно только с Firefox Nightly, потому что стабильные релизы Firefox содержат пока ещё недостаточно полноценную версию marionette
  • капабилити pageLoadingStrategy переименована в pageLoadStrategy
  • добавлена поддержка капабилити pageLoadStrategy в драйвер для Internet Explorer
  • в реализации на Java обновилась библиотека jna, в новой версии более “совместимая с opensource” лицензия
  • в реализации на .Net весьма сильно поменялась реализация фабрик локаторов, если вы писали свои собственные фабрики – внимательно посмотрите на произошедшие изменения!

Более мелкие изменения, но тоже весьма полезные:

  • в Firefox появилась возможность очищать файловые поля ввода, то есть вызывать для них метод clear, вскоре и в других браузерах это будет разрешено делать
  • в реализации на Java обновлена библиотека commons-exec, в новой версии исправлен баг, который приводил к сбою, если пытаться вызывать driver.quit() в shutdown hook’е, теперь это можно безопасно делать
  • улучшены информационные сообщения, выводимые на консоль хабом и нодами
  • в Firefox отключена функция HeartBreak
  • в реализации на Java появилась возможность в PageFactory использовать самодельные аннотации (спасибо Артёму Кошелеву и его коллегам)
  • в реализации на .Net стало доступно больше ExpectedConditions

Ну и ещё исправлено много разных багов.