LaFee
(Arina)
21.Январь.2018 16:56:46
#1
Доброе время суток.
Проблема небольшая, но нет понимания как ее решить.
Есть на странице кусок кода
<div class="ODWzM _1N39c"><a href="/@testuseraq"><img class="_1FdcY" src="https://images.test.com/placeholder-avatars/extra-large.jpg?dpr=1&auto=format&fit=crop&w=64&h=64&q=60&cs=tinysrgb&crop=faces&bg=fff" srcset="https://images.test.com/placeholder-avatars/extra-large.jpg?dpr=1&auto=format&fit=crop&w=64&h=64&q=60&cs=tinysrgb&crop=faces&bg=fff 1x, https://images.unsplash.com/placeholder-avatars/extra-large.jpg?dpr=2&auto=format&fit=crop&w=64&h=64&q=60&cs=tinysrgb&crop=faces&bg=fff 2x" role="presentation"></a></div>
на ui это просто иконка с помощью которой при клике можно перейти на профиль пользователя
Проблема в том, что если написать $x("//img[contains(@src,'placeholder-avatars')]")
или $x("//div[./a[@href = '/@testuseraq']]")
то ошибка - Element should be visible {By.xpath: //div[./a[@href = '/@testuseraq']]} Element: '<div class="ODWzM _1L_Jj" displayed:false></div>'
Если так $(byClassName("ODW"))
то ошибка - SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". SLF4J: Defaulting to no-operation (NOP) logger implementation SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
К чему тогда привязать клик на элемент?
И как он может быть скрыт, если он отображается пользователю? О_о
xotabu4
(Oleksandr Khotemskyi)
21.Январь.2018 18:16:38
#2
Добро пожаловать в мир прекрасной верстки
1 лайк
Kokoch
(Bohdan B)
21.Январь.2018 21:36:32
#3
Попробуйте кликнуть Js-ом
executeJavaScript(“document.querySelector(‘Ваш селектор’)”);
Либо так actions().click($(#Ваш селектор")).build().perform();
2 лайка
vit0r
(Viktor Hreptovich)
22.Январь.2018 11:36:26
#4
А если так $x("//a/img[contains(@src ,‘placeholder-avatars’)]") или
$(byClassName(“ODWzM _1N39c”))
1 лайк
Alex_GT
(Alex Gt)
22.Январь.2018 18:12:40
#5
Здесь человек столкнулся с такой же проблемой
opened 05:58AM - 26 Jul 15 UTC
closed 07:29PM - 28 May 19 UTC
has pr
Hi! While testing the Selenide API I found a case using the default Firefox Driv… er (using Firefox 39.0 on OS X Yosemite) where a plainly visible element on the page fails to be interacted with as Selenide believes it isn't displayed.
```
! com.codeborne.selenide.ex.ElementShould: Element should be visible {By.name: session[username_or_email]}
! Element: '<input autocomplete="on" class="js-username-field email-input js-initial-focus" name="session[username_or_email]" type="text" displayed:false></input>'
```
gets thrown when the following code is run:
```
open("https://twitter.com/login/");
$(By.name("session[username_or_email]")).val("name");
$(By.name("session[password]")).setValue("password");
$(".submit").click();
```
Решением было
I had this issues also and used javascript as a workaround to click on the checkbox. Would be nice if there will be a solution
В качестве более извращенного варианта, могу посоветовать кликнуть тупо на координаты элемента
selenium, selenium-rc