Автокоррекция / автоматическая проверка орфографии и автокоррекция без запроса пользователя

В соответствии с HTML вы можете использовать следующий xpath :

//td[@class='text-button menu-button-active' and @title='Actions'][normalize-space()='Actions']

Обновить:

Это сообщение об ошибке ...

org.openqa.selenium.NoSuchElementException: Unable to locate element: //div[@class='toolbar']//td[text()='Actions']
Build info: version: '3.13.0', revision: '2f0d292', time: '2018-06-25T15:32:14.902Z'
 os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '1.8.0_131'
Driver info: org.openqa.selenium.firefox.FirefoxDriver

... подразумевает, что GeckoDriver не смог найти элемент через стратегию локатора как //div[@class='toolbar']//td[text()='Actions'].

В соответствии с HTML, который вы поделили, вам необходимо вызвать waiter через WebDriverWait , и вы можете использовать следующее решение:

new WebDriverWait(driver, 20).until(ExpectedConditions.elementToBeClickable(By.xpath("//td[@class='text-button menu-button-active' and @title='Actions'][normalize-space()='Actions']"))).click();

Но ваша главная проблема заключается в несовместимости между версией двоичных файлов, которые вы используете используя следующее:

  • Ваша версия JDK - это 1.8.0_131, которая довольно древняя.

Решение:

  • Обновить JDK до последних уровней JDK 8u171 .
  • Выполнить свой @Test.

-2
задан Hazly Mohammed 19 January 2019 в 22:55
поделиться

1 ответ

Я хотел бы сделать это как предложение для пользователя, чтобы пользователь мог подтвердить это для исправления. Если в слове содержится предложение об исправлении, отобразите маленькую кнопку рядом с этим словом, как только пользователь нажмет на него, отобразятся возможные варианты, когда пользователь нажмет на опцию и внесет исправление. Чтобы сделать это возможным, я думаю, что требуется специальный элемент управления для поля ввода, который преобразует отдельные слова в отдельные элементы html (span или div). Он может быть построен из html div и невидимого элемента ввода (он будет иметь обработчики фокуса и клавиатуры). Когда пользователь нажимает пробел, на сервере необходимо проверить новое слово, просто отправьте запрос AJAX с новым словом и отобразите предложения по исправлению, если таковые имеются.

0
ответ дан jnr 19 January 2019 в 22:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: