Я использую Selenium WebDriver с использованием Java.У меня есть текстовое поле, и я хотел бы очистить содержимое по умолчанию и ввести в него новый контент.Функциональность такова, что если я удаляю текст из textarea и нажимаю кнопку Tab, текст по умолчанию будет заполняться автоматически.Ниже приведен HTML-код текстовой области:
<textarea autocomplete="off" class="form-control rd-control rd-control--textarea empty" cols="20" data-bind="value: offerTitle, expandedTextArea: offerTitle, valueUpdate: 'afterkeydown', customerRequiredFieldsBinding" id="CheckoutWelcomeTitle" name="CheckoutWelcomeTitle" placeholder="ex. Here comes the best offer" rows="1" type="text" data-autosize-on="true" style="overflow-y: hidden; height: 35.9792px;" onblur="setTextColorDefault(this)" oninput="setTextColor(this)">Let's bid on a discount code!</textarea>
Я попытался использовать:
driver.findElement(By.id("CheckoutWelcomeTitle")).clear
Но это не сработало.Я также попробовал это:
driver.findElement(By.id("CheckoutWelcomeTitle")).sendKeys(Keys.CONTROL + "a")
driver.findElement(By.id("CheckoutWelcomeTitle")).sendKeys(Keys.DELETE)
Это работает иногда, но не всегда.Иногда он очищает данные и пополняет текст по умолчанию.
Есть ли другой способ очистки этого текстового поля таким образом, чтобы он работал каждый раз?
В случае, если это поможет, разработчики использовалиJavaScript для повторного заполнения текстового поля при размытии.
Редактировать: Я использовал явное ожидание с условием, чтобы элемент был активным.