Согласно документации, метод sendKeys()
определяется как:
void sendKeys(java.lang.CharSequence... keysToSend)
Parameters:
keysToSend - character sequence to send to the element
Throws:
java.lang.IllegalArgumentException - if keysToSend is null
Итак, ясно, что мы не можем переопределить метод SendKeys()
.
Альтернативный
В качестве альтернативы, ссылаясь на обсуждение Общий вопрос о Java и WebDriver @KrishnanMahadevan упоминает, что вы можете предпринять попытку переопределить метод sendKeys()
, следуя приведенным ниже понятиям. , шаги и процедура:
- Концепция может варьироваться в зависимости от варианта WebDriver , с которым вы работаете.
- Поскольку все реализации WebDriver расширяются RemoteWebDriver , и вы собираетесь работать только с RemoteWebDriver , поэтому при работе с Selenium Grid Вы можете использовать следующий твик.
- Если вы не работаете с RemoteWebDriver , а вместо этого работаете с GeckoDriver , ChromeDriver , IEDriverServer , то вам потребуется
extend
соответствующие классы, override
все методы findElement()
, findElements()
и т. Д. В этих классах для возврата экземпляра my_web_element .
- my_web_element в основном будет вашим классом, в котором вы будете расширять RemoteWebElement и затем переопределять
org.openqa.selenium.remote.RemoteWebElement.sendKeys(CharSequence...)
Вышеуказанный шаг определенно поможет вам.