Size: a a a

Selenide на русском

2020 October 30

AS

Andrei Solntsev in Selenide на русском
Хм... Надо попробовать...
По идее должен видеть локатор и во втором случае.
источник

AZ

Andrii Zinchuk in Selenide на русском
Max
Салют! Подскажите пожалуйста по строковому представлению WebElement. Проблема в следующем
1)
element(By.xpath("//a[@id='credit-aggregator-button']")).toWebElement().toString()

2)
element("a#credit-aggregator-button").toWebElement().toString()


В первом пункте я получаю:
xpath: //a[@id='credit-aggregator-button']]


Во втором:
unknown locator



Вопрос: Как мне при использовании css локаторов получить локатор по аналогии с xpath? И почему я получаю unknown locator?
попробуй a[id='credit-aggregator-button'] для css
источник

M

Max in Selenide на русском
Andrii Zinchuk
попробуй a[id='credit-aggregator-button'] для css
тоже самое
unknown locator
источник

AS

Andrei Solntsev in Selenide на русском
А хотя погоди... Зачем ты вызываешь toWebElement()? Ведь тогда toString() вызывается у селениумовского WebElement, на него мы уже повлиять не можем.
источник

M

Max in Selenide на русском
вообще изначально мне нужно было сделать реализацию WebDriverEventListener для того чтобы после каждого действия с любым элементом условно добавлять его локатор в некий список. Но кажеться да, я правда не туда со своим вопросом (если конечно в селениде нет чего то подобного о чем я не знаю)
источник

AS

Andrei Solntsev in Selenide на русском
Такой отчёт туже есть в селениде. Типа TextReport.
источник

M

Max in Selenide на русском
не, мне не для отчета, пытаюсь запилить примерно что делает Артем Ерошенко тут https://github.com/eroshenkoam/webdriver-coverage-example/tree/full (мне нужно собрать список локаторов и url для того чтобы дальше их подключить к расширению в браузере и подсвечивать эти элементы на странице)
источник

AS

Andrei Solntsev in Selenide на русском
Ок, но можно использовать тот же механизм. Реализовать свой SelenideListener.
источник

AB

Alexei Barantsev 🗹... in Selenide на русском
а зачем это надо?
источник

M

Max in Selenide на русском
Alexei Barantsev 🗹
а зачем это надо?
На проекте нужно понимание покрытия, в голове фиг удержишь что покрыто, а что нет (особенно когда страницы часто меняются). В итоге со временем остаётся много важного функционала который оказывается в автотестах не проверяется.
источник

M

Max in Selenide на русском
А тут открыл страницу, просмотрел какие элементы выделены рамочками и понял что например что то важное пропустили
источник

M

Max in Selenide на русском
Andrei Solntsev
Ок, но можно использовать тот же механизм. Реализовать свой SelenideListener.
Спасибо, посмотрю
источник

AB

Alexei Barantsev 🗹... in Selenide на русском
то есть вы для каждого адреса ещё сохраняете код страницы, потом в отчёте отрисовываете страницу с этим адресом и на ней отмечаете все элементы по локаторам, которые использовались в операциях с элементами на этой странице?
источник

M

Max in Selenide на русском
Не, сохраняться должен лист локаторов + URL.

Затем это закидывается в расширение для хрома и он по этим локаторам, на нужных страницах элементам дорисовывает рамки (ну тоесть включили расширение, загрузили файл с нашими локаторами и ходим по страницам, смотрим где что покрыто)
источник

AB

Alexei Barantsev 🗹... in Selenide на русском
угу, понял, спасибо
источник

M

Max in Selenide на русском
Max
Не, сохраняться должен лист локаторов + URL.

Затем это закидывается в расширение для хрома и он по этим локаторам, на нужных страницах элементам дорисовывает рамки (ну тоесть включили расширение, загрузили файл с нашими локаторами и ходим по страницам, смотрим где что покрыто)
а что за расширение ?
источник

M

Max in Selenide на русском
Пока никакого, это просто хочется так сделать
источник

AS

Andrei Solntsev in Selenide на русском
Вообще непонятно, зачем расширение. Можно же прямо во время теста подкрашивать затронутые элементы, а в конце делать скриншот.
источник

AB

Alexei Barantsev 🗹... in Selenide на русском
не-не, там суть идеи в том, чтобы на странице показать все элементы, которые были затронуты во всех тестах
источник

AS

Andrei Solntsev in Selenide на русском
А, ок.
источник