{WebElement} .getAttribute ("value") возвращает 0 - PullRequest
0 голосов
/ 13 марта 2020

Я взаимодействую с элементом на веб-странице:

<li class="MuiButtonBase-root MuiListItem-root MuiMenuItem-root jss524 MuiMenuItem-gutters jss525 MuiListItem-gutters MuiListItem-divider MuiListItem-button" tabindex="-1" role="menuitem" aria-disabled="false" data-quid="SelectListItem-2" value=“{URL}”><div class="jss519"><div class="jss520"><div>{TEXT}</div></div><div class="jss522"></div></div><span class="MuiTouchRipple-root"></span></li>

В моем коде есть фрагмент:

            System.out.println(x.getAttribute("role"));
            System.out.println(x.getAttribute("aria-disabled"));
            System.out.println(x.getAttribute("data-quid"));
            System.out.println(x.getAttribute("class"));
            System.out.println(x.getText());
            System.out.println(x.getAttribute("value"));

Однако последний строка System.out.println(x.getAttribute("value")); выводит 0 вместо фактического значения.

Я использую селен 3.141.59

1 Ответ

2 голосов
/ 13 марта 2020

Вы можете попробовать использовать JavascriptExecutor.

protected String getInputValue(WebElement element) {
String js = "return arguments[0].querySelector('input').value";
JavascriptExecutor js = (JavascriptExecutor) driver;
return js.executeScript(js, element).toString();
}

Ref: Selenium Webdriver получает входное значение, которое уже имеет атрибут value (Java)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...