Możesz odwołać się do sterownika, który otrzymał taki element.
IWebDriver driver = element.WrappedDriver;
Można też po prostu wykonywać polecenia kierowcy bezpośrednio z element.WrappedDriver
UPDATE:
RemoteWebDriver
implementuje interfejs IWebDriver
.
ChromeDriver
, FirefoxDriver
, IEDriver
wszystkie rozciągają klasę RemoteWebDriver
który zawiera interfejs IWebDriver
.
Podobnie RemoteWebElement
zrobi to samo i ma tę własność. Zmień więc swój IWebElement
na RemoteWebElement
, który implementuje interfejs IWebElement
, a otrzymasz dostęp do niego.
Ogólnie postaraj się zachować instancję klasy, ponieważ instancja interfejsu IWebElement ma bardzo mało rzeczy, które faktycznie z nią współpracują. Jeśli zatrzymasz go w instancji klasy RemoteWebDriver
i RemoteWebElement
, uzyskasz znacznie więcej opcji.
Ten sam problem występuje [tutaj] (https://github.com/seleniumhq/selenium/issues/1490), naprawdę wierzę, kwestia ta zasługuje na więcej uwagi, nie sądzę, któregokolwiek z odpowiedziami tak daleko zapewniają realistyczne rozwiązanie. Nawet nie jestem pewien, czy można to zrobić ... –