Привет!
Пока не начался контрнаступ, давайте-ка обновимся на Selenide 6.14.0 - а то потом будет не до него.
В нём есть несколько изменений, которые как будто не очень большие, но могут чего-нибудь сломать. Поэтому очень советую не оттягивать и обновиться сейчас.
- Ускорили дебаг
- Убрали флажок
--no-sandbox
- Добавили метод
step
для отчётиков - Добавили метод
$.dragAndDrop(DragAndDropOptions)
- Браузер за экран
- Обновили зависимости
- Новости
- Статистика
Ускорили дебаг
Когда дебажишь свой тест и останавливаешься на брейкпойнте, иногда можно заметить, что IDE очень долго отображаешь значения полей в пэджобжекте. Вот в таком состоянии IDE может подвиснуть надолго:
Причина в том, что для отображения каждого поля Selenide обращается к вебдрайверу, чтобы получить имя тэга, актуальный текст и атрибуты элемента. Зато через некоторое время вы могли увидеть актуальную картинку:
Теперь этот процесс должен сильно ускориться. Селенид больше не будет обращаться к вебдрайверу, а просто покажет локатор элемента:
Но и формат метода $.toString()
/ $$.toString()
тоже изменился. Будьте готовы.
См. issue 2253. и PR 2269.
Но не переживайте, это всё касается только дебага. При падении теста вы по-прежнему будете получать полную информацию об элементе с блекджектом и скриншотами.
Убрали флажок хрома --no-sandbox
История с этим флажком мутная. Лично я не вижу никакой разницы, запускать хром с ним или без него.
Но
- Некоторые пользователи говорят, что без флажка
--no-sandbox
хром не запускается в докере - А другие пользователи говорят, что с флажком
--no-sandbox
процесс хрома остаётся висеть в фоне и пожирает весь CPU. Но это вроде только на винде (?)
В общем, мы убрали этот флажок, потому что пользователям №1
- легко обнаружить проблему (хром тупо не запускается)
- легко добавить его самостоятельно:
Configuration.browserCapabilities = new ChromeOptions().addArguments("--no-sandbox");
См. issue 2270 и PR 2271.
Добавили метод step
для отчётиков
Если вы используете селенидовский встроенный отчёт (TextReport
), то теперь можете группировать действия в “шаги”
с помощью нового метода step
:
@Test
void authentication() {
step("login",()->{
open("/login.asp");
$("#username").val("u");
$("#password").val("p");
});
step("logout",()->{
$("#logout").click();
$("#goodBye").shouldHave(text("Good bye looser!"));
});
}
В отчёте шаги будут визуально выделяться.
+---------------+-----------------------------------------------+-------+------+
| Element |Subject |Status | ms. |
+---------------+-----------------------------------------------+-------+------+
| login | |PASS | 4000 |
| open | http://127.0.0.1:8080/my_account/account.html |PASS | 2662 |
| #username | val "u" |PASS | 300 |
| #password | val "p" |PASS | 400 |
| logout | |PASS | 1023 |
| #logout | click |PASS | 923 |
| #goodBye | should have text "Good bye looser!" |PASS | 100 |
+---------------+-----------------------------------------------+-------+------+
Кстати, шаги могут быть вложенными друг в друга.
См. issue 2172. Спасибо Maksim @Au6ojlut за PR 2250.
Добавили метод $.dragAndDrop(DragAndDropOptions)
Теперь метод $.dragAndDrop
приобрёл более логичное звучание: сначала “что”, потом “куда” и наконец, “как”.
$("#drag1").dragAndDrop(to("#div2"));
$("#drag1").dragAndDrop(to("#div2").usingJS());
Спасибо Maksim @Au6ojlut за PR 2245.
Разрешили двигать браузер за экран
Исправили мелкую багу, из-за которой нельзя было проставить негативные значения в позиции браузера:
Configuration.browserPosition = "-1900x-450";
Слабо себе представляю, зачем это может быть полезно, но исправили.
См. issue 2258 и PR 2259.
Путь к бинарнику Edge
В селениде есть настройка Configuration.browserBinary
, позволяющая задать путь к бинарнику браузера.
(на всякий случай: в большинстве случаев её не нужно задавать).
Раньше эта настройка не поддерживалась для браузера Edge, а теперь поддерживается. Ура.
Спасибо Vladislav Velichko за PR 2267.
Обновили зависимости
Новости
- Серия уроков Selenide Java with Cucumber от TechPro Education
- Обзор Jetbrains Aqua для автоматизации тестирования от Oleh Pendrak
Статистика
Количество ежемесячных скачиваний Селенида перевалило за 600 тыщ!

ru.selenide.org
08.05.23