Привет, друзья! Давно не виделись.
В феврале у нас вышел релиз Selenide 4.3
Исправили метод $$().find()
Точнее, он и раньше искал элементы правильно, но некорректно сообщал об ошибке. Сообщение об ошибке могло ввести в заблуждение. Теперь ругается как надо.
См. pull request 426
Спасибо Юлии Илюхиной за исправление!
Исправили поля ПО SelenideElement
без аннотации @FindBy
Оказалось, все эти годы Selenide вёл себя неожиданно, когда его пытались использовать неожиданно. :)
Представим, что вы создали пэдж обжект с полями типа SelenideElement
(без аннотации @FindBy
):
public class StartPage {
SelenideElement startPage = $("#start-page");
}
Этот класс - прелесть! Он простой и понятный, он работает сам по себе без всяких фабрик и прочих утилит.
Достаточно просто его создать: StartPage page = new StartPage();
, и он работает.
Это идеальный пэдж обжект, который возможен только в мире Selenide.
Но иногда люди по привычке пытаются его инициализировать через всякие там фактори методы, как то:
StartPage page = page(StartPage.class);
и тут начиналась чехарда. См. pull request 443
Но теперь это в прошлом.
Спасибо Сергею Пирогову за исправление!
Привели в порядок названия настроек
Как вы знаете, все настройки Selenide можно установить двумя способами: либо через system property, либо прямо в коде. Но не всегда названия этих настроек соответствовали друг другу один-в-один.
Мы привели их в порядок, так что теперь любой настройке вида Configuration.someProp
всегда соответствует system property
selenide.someProp
. Старые настройки пока тоже сохранены для обратной совместимости.
Задепрекячили метод Selenide.selectRadio
Раньше выбрать radiobutton можно было таким методом: selectRadio(By.name("me"), "cat");
Теперь он помечен как @Deprecated
, и вместо него рекомендуется использовать стандартный селенидовский метод:
$(By.name("me")).selectRadio("cat");
Создали ссылку на свежий Javadoc
Теперь актуальный javadoc всегда будет доступен по постоянной ссылке (без циферок):
Обновили зависимости
Поскольку Selenium не обновляется уже несколько месяцев, а душа просит свежего мяса, пришлось довольствоваться мелочами:
- обновились до browsermob-core:2.1.4
- обновились до org.apache.httpcomponents:httpcore:4.4.6
- обновились до guava:21.0
Новости
- Исторический момент! BrowserStack написали туториал, как запускать тесты Selenide в их облаках:
BrowserStack+Selenide - Разоблачение Selenide от Сергея Пирогова:
Тёмная сторона Selenide
Если кто не понял, данный релиз 4.3 как раз эту проблему и исправляет (см. pull request 443) - Семинар Якова Крамаренко в Сан-Франциско: Kiss PageObjects
- Новая статья про Selenide на японском: I tried writing a test code with Selenide
- Сравнение Selenide и GEB на японском: Selenide as seen from Geb usage
- И ещё один туториал на японском: Kotlin+Selenide
SeleniumCamp!
И внимание! Приглашаю всех на конференцию SeleniumCamp, которая пройдёт уже совсем скоро:
SeleniumCamp.com
24-25 февраля
Киев
Киев - прекрасный город, а SeleniumCamp - отличная конференция. Там будут и прекрасно приготовленные базовые знания про функциональные тесты и пэдж обжекты от Николая Алименкова, и про наболевший Angular, и экзотика про Java 8 и даже Kotlin, и батл TestNG против JUnit, и очередное поливание грязью BDD и многое другое.
Но главное -
- полноценный двухчасовой семинар по Selenide и
- батл Selenide против JDI
Это того стоит, отвечаю!
ru.selenide.org
09.02.17