Selenium не видит элемент, если он имеет свойство opacity:0

Для написания автотеста, нужно чтобы Selenium подцепил тэг

тест падает с ошибкой
Element should be visible {By.xpath: //div[contains(@class,‘radio’)]//input[@value=‘2’]}
Element: ‘’

Погуглив поняла ,что данный элемент имеет свойство opacity:0 (прозрачность элемента 0) из за чего Selenium его не видит .
Какой использовать метод, чтобы Selenium его увидел

А какие манипуляции планируется совершать с этим элементом?

Можнo js-ом добавить елементу opacity

на этот тэг нужно кликнуть ( на веб форме чек-бокс), при клике появляется другая форма ,где нужно выбирать значение

Не подскажите как ? Погуглив нашла пару вариантов $(локатор).fadeIn()-но почему то команда fadeIn не распознается, и этим скриптом пробовала не видит элемент
public String getTextByJavascript(final String element) {
String script = “var element = arguments[0];”
+ “return element.textContent;”
;
return (String) ((JavascriptExecutor)getWebDriver()).executeScript(script, element);
}

Сомневаюсь что у вас получится взять в обработку этот элемент, не модифицируя его.

как-то так
document.querySelector(‘css selector’).style.opacity = 100

1 лайк

Указываю (“document.querySelector(’//input[@value=‘2’]’).style.opacity = 10;”);затем идет метод клика на элемент,который теперь видимый выходит ошибка Runtime.evaluate threw exception: SyntaxError: missing ) after argument list
указала другие кавычки super.executeJavaScript(“document.querySelector(”//input[@value=‘2’]").style.opacity = 10;");
clickLMB(OOO_RADIO_BUT);-метод кликает на видимый элемент выходит ошибка Runtime.evaluate threw exception: SyntaxError: missing ) after argument list

Вот верска проекта , на скрине показаны какие элементы нужно дергать ,чтобы кликнуть на элемент

querySelector принимает css селектор а не xpath
Попробуйте querySelector(“input[value=‘2’]”)

1 лайк

спасибо) нашла)