Узел селен вебдрайвер, не может очистить ввод текста - PullRequest
0 голосов
/ 10 декабря 2018

Я уже давно пытаюсь решить эту проблему, ни один из существующих вопросов не помогает.Я использую реализацию узла для веб-драйвера selenium , версия ^ 4.0.0-alpha.1 и тестирую его на Chrome с использованием последней версии chromedriver.

I 'Я пытаюсь очистить текст <input/>, чей type="email".Для этого в Webdriver есть встроенная команда , но когда я ее выполняю, ввод не очищается (и ошибки нет):

// This populates the text field, no problem
driver.findElement(By.id("model-auth-email")).sendKeys("test@gmail.com");

// This is executed without error, but nothing happens, text field isn't cleared
driver.findElement(By.id("model-auth-email")).clear();

Я не могу использовать CTRL + 'метод '-> BACKSAPCE, так как я использую Mac, и это будет COMMAND +' a '.И в драйвере chrome были (до сих пор не решены) проблемы с поддержкой ввода кнопки osx COMMAND в течение примерно 6 лет, согласно различным потокам, которые я мог найти.это довольно забавно.

Есть идеи, почему .clear() тихо не работает?

1 Ответ

0 голосов
/ 10 декабря 2018

Из Webdriver документа, findElement вернет обещание, поэтому вы можете попробовать:

driver.findElement(By.id("model-auth-email"))
  .then((el) => {
  el.clear()
  })
  .catch(e => {
    throw e; 
  });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...