Вышла Selenide 4.6

Вышла Selenide 4.6

Мелкие недочёты
09.09.17

Всем привет!

Мы выпустили новую версию Selenide 4.6!


Метод $.shouldHave(exactValue(" foo ")) больше не обрезает пробелы в начале и конце строки

Как известно, метод $.shouldHave(value(" foo ")), который все мы используем в большинстве случаев, обрезает начальные и конечные пробелы в строке. Это удобно, потому что браузеры тоже так делают. Но вот оказалось, что то же самое делал и метод exactValue(), а это уже нелогично.

Предположим, у вас на страничке есть <textarea value="Regression test description "></textarea>. Проверка $("textarea").shouldHave(exactValue("Regression test description ")); раньше валилась, а теперь нет.

См. issue 573

Спасибо @mseele за pull request!

Добавили метод $.getSearchCriteria()

В Selenide всегда был удобный метод $.toString() - он выводил актуальные детали веб-элемента: тэг, текст, атрибуты. Это очень удобно при отладке и логировании. Но у него есть недостаток: за всеми этими деталями он обращается к вебдрайверу, что занимает немножко времени и иногда может упасть.

А мы добавили новый метод $.getSearchCriteria(), который не обращается к вебдрайверу, а просто выводит локатор, по которому элемент пытались искать.

Одним словом,

  assertThat($("h2").toString(), equalTo("<h2>Dropdown list</h2>"));
  assertThat($("h2").getSearchCriteria(), equalTo("h2"));


Исправили непотребность 528

Спасибо @BorisOsipov за pull request!

Исправили непотребность 484

В некоторых редких случаях Селенид выкидывал вот такую ошибку без скриншота:

Element not found {#valid-id.findBy(text 'INVALID-TEXT')}
Expected: text '9802222-99LX'

Screenshot: null
Timeout: 0 ms.

Бывает. Исправили.


Починили запуск IE на гриде

(Неужели в 21 веке всё ещё кто-то использует грид? И кто-то использует IE? Бог ты мой, ещё и их вместе?)

См. issue 529

Спасибо @BorisOsipov за pull request!

Новости


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

ru.selenide.org

09.09.17