-
Notifications
You must be signed in to change notification settings - Fork 8
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
4 changed files
with
116 additions
and
4 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,112 @@ | ||
--- | ||
layout: post | ||
title: "Вышла Selenide 7.7.0" | ||
description: "" | ||
category: | ||
header-text: "Fly me to the Moon" | ||
tags: [] | ||
--- | ||
{% include JB/setup %} | ||
|
||
Всех с Новым Годом! | ||
|
||
Мы начали год с релиза [Selenide 7.7.0](https://github.com/selenide/selenide/milestone/216?closed=1). | ||
|
||
* [Поддержка Moon](#moon) | ||
* [Метод `$.scroll()` с параметрами](#scroll-with-parameters) | ||
* [Починили Селенид на Java 22](#fix-selenide-on-java-22) | ||
* [MITM сертификат для Selenide proxy](#update-proxy-mitm-certificate) | ||
|
||
<br> | ||
|
||
### Запилили поддержку Moon {#moon} | ||
|
||
Когда-то ребята из Aerokube сделали Selenoid - типа Selenium Grid на стероидах. Selenoid позволял запускать браузеры в | ||
докере, снимать видео и быстро стал популярным. И в Selenide 4 года назад мы запили поддержку Selenoid. | ||
|
||
Потом ребята сделали Moon - нечто очень похожее, но в Kubernetes. И переключились на него. | ||
А теперь, похоже, поддержка Selenoid окончательно [прекращена](https://github.com/aerokube/selenoid): | ||
> This repository has been archived by the owner on Dec 17, 2024. It is now read-only. | ||
И мы вынуждены были наконец-то запилить поддержку Moon. :) | ||
Теперь вы можете, запуская браузеры с помощью Moon, скачивать оттуда файлы и проверять буфер обмена - _всё, что Селенид умеет делать с локальными браузерами_. | ||
|
||
Начать его использовать просто: | ||
1. замените зависимость `com.codeborne:selenide:7.7.0` на `com.codeborne:selenide-moon:7.7.0` | ||
2. Пропишите в тестах URL вашего муна: | ||
```java | ||
Configuration.remote = "http://moon.aerokube.local/wd/hub"; | ||
``` | ||
3. И всё. Можете использовать соответствующие методы в тестах: | ||
```java | ||
clipboard().shouldHave(content("John Wick")); | ||
File report = $("#report").download(using(FOLDER).withExtension("pdf")); | ||
``` | ||
|
||
См. [issue 2304](https://github.com/selenide/selenide/issues/2304) и [PR 2924](https://github.com/selenide/selenide/pull/2924). | ||
|
||
<br> | ||
|
||
### Добавили метод `$.scroll()` с параметрами {#scroll-with-parameters} | ||
|
||
В Селениде уже были методы для прокручивания страницы: `$.scrollTo()`, `$.scrollIntoView()`, `$.scrollIntoCenter()`. | ||
|
||
Теперь появился ещё один, более универсальный метод `$.scroll(options)`, которому можно пихнуть в параметры направление | ||
и расстояние в пикселях: | ||
|
||
```java | ||
$("#up").scroll(direction(UP)); | ||
$("#left").scroll(direction(LEFT).distance(1400)); | ||
``` | ||
|
||
См. [issue 2769](https://github.com/selenide/selenide/issues/2769). | ||
Спасибо [donnieHub](https://github.com/donnieHub) за [PR 2809](https://github.com/selenide/selenide/pull/2809). | ||
|
||
<br> | ||
|
||
### Починили работу Селенид на Java 22 {#fix-selenide-on-java-22} | ||
|
||
Внезапно выяснилось, что Селенидовские тесты (без прокси) не работают на Java 22. | ||
|
||
Чтобы это починить, пришлось добавить BrowserUpProxy в runtime scope (даже если вы не используете прокси). | ||
Неидеально, но как быстрое решение сойдёт. Чтобы починить это более правильно, потребуется хорошенько порефакторить. :) | ||
Но в общем-то, для вас ничего не изменится. | ||
|
||
См. [issue 2910](https://github.com/selenide/selenide/issues/2910) и [PR 2912](https://github.com/selenide/selenide/pull/2912). | ||
|
||
<br> | ||
|
||
### Обновили MITM сертификат для Selenide proxy {#update-proxy-mitm-certificate} | ||
|
||
А вот это было эпично. | ||
У тех, кто добавил самоподписанный сертификат BrowserUpProxy в свои доверенные сертификаты (хз зачем), тесты резко сломались с приходом 2025 года. | ||
|
||
Оказалось, что когда-то давно, в 2015 году, кто-то в проекте BrowserMobProxy сгенерировал самоподписанный сертификат на 10 лет. | ||
И вот в начале января 2025 года он истёк. А проект несколько раз переходил из рук в руки. И авторов не найти. И документации не осталось. :) | ||
|
||
_Хорошо, что мы такие молодцы и быстренько научились генерировать новые сертификаты!_ | ||
|
||
<br> | ||
|
||
Большой привет тому, кому в январе 2035 снова придётся наступить на эти грабли. ;) | ||
|
||
> Вспомни о нас, когда откроешь вчерашний README в своей Intellij IDEA 2034.3.1 и запустишь тесты на Java 45 LTS, попивая | ||
> ананасовый латте на своей веранде на Луне. | ||
См. [issue 457](https://github.com/valfirst/browserup-proxy/issues/457), | ||
[PR 2930](https://github.com/selenide/selenide/pull/2930) и [PR 458](https://github.com/valfirst/browserup-proxy/pull/458). | ||
|
||
<br> | ||
|
||
|
||
С Новым Годом! | ||
|
||
Стройте планы, но позволяйте случайностям случаться. | ||
|
||
Когда-нибудь всё будет хорошо. | ||
|
||
<br> | ||
|
||
[Андрей Солнцев](http://asolntsev.github.io/) | ||
|
||
ru.selenide.org |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters