Size: a a a

Selenide на русском

2020 November 13

AO

Andrew Orlov in Selenide на русском
я даже все виджеты завернул в прокси
источник

AO

Andrew Orlov in Selenide на русском
и всё пишется в аллюр
источник

AO

Andrew Orlov in Selenide на русском
источник

AO

Andrew Orlov in Selenide на русском
вот так примерно всё выглядит
источник

AO

Andrew Orlov in Selenide на русском
так как всё уже завёрнуто в прокси - тупо пишешь сам тестовый скрипт, каждое действие уже само запишется в аллюр
источник

AO

Andrew Orlov in Selenide на русском
ничего @Step'ами покрывать уже не надо
источник

AO

Andrew Orlov in Selenide на русском
только если хелперы какие-то делаешь и конкретный метод как-то обзовёшь глобально
источник

S

Stanislav in Selenide на русском
Привет. Подскажите плиз. Я так понял, что find() ищет только внутри элемента, но не опускается ниже во все вложенные элементы для поиска?
У меня есть элемент
<section class="search-list">
  <svg class="svg-icon search">
     <path class="primary-fill"></path>
  </svg>
  <input class="search-input">
  <button type="button" class="hoverable buttonIcon__pFEJ8g">
     <span>
        <svg>
           <path class="caretdown-fill"></path>
        </svg>
     </span>
  </button>
  <button type="button" class="hoverable buttonIcon__pFEJ8g">
     <span class="buttonIconInner__5PIL7g">
        <svg>
           <path></path>
        </svg>
     </span>
  </button>
  <div class="line"></div>
  <button type="button" class="hoverable buttonIcon__pFEJ8g">
     <span class="buttonIconInner__5PIL7g">
        <svg class="svg-icon cross">
           <path class="primary-fill"></path>
        </svg>
     </span>
  </button>
</section>
Мне нужно найти  элемент <svg class="svg-icon cross">
Весь section я помещаю в selenideElement SEARCH_AREA.
Пыта/сь найти нужный мне элемент SEARCH_AREA.find(By.xpath("*[local-name() = 'svg' and contains(@class, 'svg-icon cross')]")).shouldBe(visible) - элемент не найден, но если искать начиная с элемент, который лежит в SEARCH_AREA, то все находится - SEARCH_AREA.find(By.xpath("button//span//*[local-name() = 'svg' and contains(@class, 'svg-icon cross')]")).shouldBe(visible)
Я пытался SEARCH_AREA.find(By.xpath("//*[local-name() = 'svg' and contains(@class, 'svg-icon cross')]")).shouldBe(visible) - выдается ошибка
источник

SR

Stas Rusakov in Selenide на русском
Stanislav
Привет. Подскажите плиз. Я так понял, что find() ищет только внутри элемента, но не опускается ниже во все вложенные элементы для поиска?
У меня есть элемент
<section class="search-list">
  <svg class="svg-icon search">
     <path class="primary-fill"></path>
  </svg>
  <input class="search-input">
  <button type="button" class="hoverable buttonIcon__pFEJ8g">
     <span>
        <svg>
           <path class="caretdown-fill"></path>
        </svg>
     </span>
  </button>
  <button type="button" class="hoverable buttonIcon__pFEJ8g">
     <span class="buttonIconInner__5PIL7g">
        <svg>
           <path></path>
        </svg>
     </span>
  </button>
  <div class="line"></div>
  <button type="button" class="hoverable buttonIcon__pFEJ8g">
     <span class="buttonIconInner__5PIL7g">
        <svg class="svg-icon cross">
           <path class="primary-fill"></path>
        </svg>
     </span>
  </button>
</section>
Мне нужно найти  элемент <svg class="svg-icon cross">
Весь section я помещаю в selenideElement SEARCH_AREA.
Пыта/сь найти нужный мне элемент SEARCH_AREA.find(By.xpath("*[local-name() = 'svg' and contains(@class, 'svg-icon cross')]")).shouldBe(visible) - элемент не найден, но если искать начиная с элемент, который лежит в SEARCH_AREA, то все находится - SEARCH_AREA.find(By.xpath("button//span//*[local-name() = 'svg' and contains(@class, 'svg-icon cross')]")).shouldBe(visible)
Я пытался SEARCH_AREA.find(By.xpath("//*[local-name() = 'svg' and contains(@class, 'svg-icon cross')]")).shouldBe(visible) - выдается ошибка
xpath в find нужно начинать с точки - ./
источник

S

Stanislav in Selenide на русском
Как можно искать элеимент через find() в SelenideElement на всю глубину поиска, а не только по элементам, которые верхнеуровнево лежат в SelenideElement?
источник

SR

Stas Rusakov in Selenide на русском
Вроде бы кстати делалась фича в селенид которая должна ошибку выдавать в этом случае
источник

AV

Alexei Vinogradov in Selenide на русском
Вот в аллюр писать тексты проверок я бы тоже хотел - но правда лучше бы это сделать центрально в Selenide-Allure плагине
источник

AS

Andrei Solntsev in Selenide на русском
Stas Rusakov
xpath в find нужно начинать с точки - ./
Дело не в методе find, а в самом xpath.

1. Xpath ./* ищет только дочерний элемент
2. Xpath .//* ищет по всей иерархии
источник

ИМ

Илья Мороз in Selenide на русском
ребят а что лучше xPath или css?
источник

AS

Andrei Solntsev in Selenide на русском
Я использую по ситуации.
1. В большинстве случаев css, поскольку он короче и проще для понимания
2. Но иногда xpath, когда функционала css не хватает (например, поиск по тексту, получения родителей и т.п.)
источник

ИМ

Илья Мороз in Selenide на русском
мне коллега сказал что css быстрее ищет это правда?
источник

AS

Andrei Solntsev in Selenide на русском
1. Это устаревший стереотип. Кажется, так и было на старых IE.
2. Даже если и так, важность этого фактора нулевая, т.к. большая часть времени уходит на работу самого приложения (загрузка страниц, эффекты, анимация и т.п.)
источник

ИМ

Илья Мороз in Selenide на русском
понял спасибо
источник

СР

Саша Росолько... in Selenide на русском
просто используйте тот локатор, который будет проще понять, сапортать и в целом разобраться
источник

ИМ

Илья Мороз in Selenide на русском
И кстате все хотел сказать, спс за Selenide. Жаль что у нас на работе его не хотят использовать очень грущу по этому поводу, так как на прошлом писал именно на Selenide и кайфовал, а теперь ...
источник