НЕ удается использовать javascriptexecutor для нажатия кнопки входа в систему (пробовал querySelector, getElementsByClassName, но не удалось)

#javascript #selenium

#javascript #селен #selenium-веб-драйвер

Вопрос:

Я пытаюсь сделать Selenium с Java casestudy на веб-сайте https://www.demoblaze.com/index.html,

Шаги:

  1. Перейдите к https://www.demoblaze.com/index.html
  2. нажмите кнопку «Войти» и введите имя пользователя и пароль, наконец, нажмите кнопку «Войти».

Проблема:

Поскольку findElement НЕ работает даже с WebDriverWait во всплывающем окне входа в систему, я попробовал JavascriptExecutor, который отлично работает с именем пользователя и паролем.

js.executeScript(«document.getElementsByTagName(‘input’)[4].значение =» «‘» user «‘»); js.executeAsyncScript(«document.getElementById(‘loginpassword’).значение=» «‘» pass «‘»);

Однако, когда я попробовал кнопку входа в систему, используя getElementsByClassName, querySelector, это не сработало. Пожалуйста, помогите.

FYIP: Ни одно из приведенных ниже действий не работает для меня.

JavascriptExecutor js;

js.executeAsyncScript(«аргументы[0].click();»,»document.evaluate(‘//кнопка[text()=’Войти’]’, document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue;»);

js.executeScript(«документ.querySelector(‘кнопка’).onclick = ‘logIn()’.click();»);

js.executeScript(«document.getElementsByClassName(‘btn btn-primary’)[2].click()»);

Комментарии:

1. Пожалуйста, уточните вашу конкретную проблему или предоставьте дополнительные сведения, чтобы выделить именно то, что вам нужно. В том виде, в каком он сейчас написан, трудно точно сказать, о чем вы просите.