Вышла Selenide 6.16.1

Вышла Selenide 6.16.1

Всё или что-нибудь
24.07.23

Привет, пипл!

Мы выпустили небольшое обновление Selenide 6.16.1.

Добавили условия allOf и anyOf

Теперь можно проверить одно из нескольких условий (OR):

$("#president").shouldHave(anyOf(text("Ничтожество"), text("Трусливый бездарь")));

(на самом деле для этого и раньше был метод Condition.or, но anyOf как будто чуть удобнее).

Также можно проверить совпадение всех условий сразу (AND):

$("#generals").shouldHave(allOf(text("бездарней"), text("ничтожней")));

(на самом деле это то же самое, что и $("#generals").shouldHave(text("бездарней"), text("ничтожней")), но зато результат allOf можно вынести в переменную или метод, создав таким образом своё условие).

Спасибо Evgenii Plugatar за PR 2368.


Добавили проверки для cookies

Теперь можно проверять кукисы в браузере:

import static com.codeborne.selenide.Selenide.webdriver;

webdriver().shouldHave(cookie("session_id"));
webdriver().shouldHave(cookie("session_id", "1234567890"));
webdriver().shouldHave(cookie("session_id", "1234567890", Duration.ofSeconds(10)));

С ожиданием результата, кастомным таймаутом и скриншотами при падении - всё, как вы любите.

Спасибо adorne за PR 2367.


Обновили WebDriverManager с 5.4.0 до 5.4.1

Среди прочего, там добавлена поддержка Chrome 115, с которым у многих возникли проблемы.

См. PR 2374.

P.S. На маках Chrome 115 в данный момент не работает. Выскакивает такая ошибка:

SessionNotCreatedException: Could not start a new session.  
  Response code 500.  
    Message: unknown error: cannot find Chrome binary 

Но мы не виноваты, это бага в chromedriver. Обещали скоро исправить.


Исправили проверку текстов <tspan> в SVG

Вы когда-нибудь проверяли тексты внутри SVG? Я тоже нет. А они там, оказывается, есть!

  <svg>
    <text x="10" y="30" class="small">
      Люди хотят <tspan>благодарности</tspan>.
    </text>
  
    <text x="10" y="60" class="small">
      Мы не склад <tspan>Amazon</tspan>.
    </text>
  
    <text x="10" y="90" class="small">
      Спасибо тебе, <tspan>Бен Уоллес</tspan>!
    </text>
  </svg>

И теперь их снова можно проверять:

  $$("svg tspan").shouldHave(texts("благодарности", "Amazon", "Бен Уоллес"));

См. issue 2377 и PR 2379.




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

ru.selenide.org

24.07.23