Вышла Selenide 5.5.1

Блог

Вышла Selenide 5.5.1

Эмуляция мобильного браузера

Всем привет!

Соскучались?

Чтобы вы не расслаблялись, мы выпустили Selenide 5.5.1 с парочкой новых фич.


Добавили эмуляцию мобильного браузера

Иногда хочется запустить тесты не на обычном хроме, а “как будто в мобилке”.

Как будто этот хром открыли бы на мобильном телефоне или планшете.

(Например, сайт selenide.org открывается на мобилке очень криво. :( Мы работаем над этим.)

Теперь это легко сделать, добавив такую вот System property перед запуском вебдрайвера:

java -Dchromeoptions.mobileEmulation="deviceName=Nexus 5"

или прямо в коде:

System.setProperty("chromeoptions.mobileEmulation", "deviceName=Nexus 5");

NB! Речь идёт только об одной опции - имени устройства. Этого достаточно в большинстве случаев. Если вам нужна более тонкая настройка мобильного браузера, го реализовывать WebDriverProvider с аргументами и опциями.

См. 1008 и PR 1011.


Пометили метод Selenide.close() как устаревший

В селениде издревле был метод Selenide.close(). Но он вводил в заблуждение, т.к. он закрывал весь браузер, а не только активную вкладку. В то же время в Selenium есть метод close(), который закрывает только текущую вкладку (и только если она была единственной - весь браузер). А для закрытия всего браузера в Selenium есть метод quit().

Я, конечно, виноват, что сделал когда-то метод close(), не почитав документацию к Selenium. Я был молод и не верил в javadoc. Но и селениумовские названия close vs quit тоже, честно говоря, не очень удачные. Поди запомни, кто из них что закрывает.

В общем, чтобы облегчить твою жизнь, дорогой пользователь, теперь мы Селенид предлагает тебе на выбор два метода с говорящими названиями.

  • Selenide.closeWindow() - закрывает текущее окно (или вкладку, что для селениума одно и то же)
  • Selenide.closeWebDriver() - закрывает весь браузер

Запоминать больше ничего не придётся.

А метод Selenide.close() мы пока пометили как @Deprecated. Удалим в Selenide 6.0.0

См. 1016 и PR 1017.


Новости



Андрей Солнцев

ru.selenide.org

blog comments powered by Disqus

The project is maintained by