È possibile fare riferimento al driver che ha ottenuto l'elemento in questo modo.
IWebDriver driver = element.WrappedDriver;
È anche possibile eseguire i comandi del driver direttamente dal element.WrappedDriver
UPDATE:
RemoteWebDriver
implementa l'interfaccia IWebDriver
.
ChromeDriver
, FirefoxDriver
, IEDriver
tutto estendono la classe RemoteWebDriver
che include l'interfaccia IWebDriver
.
Analogamente, RemoteWebElement
farà la stessa cosa e avrà quella proprietà. Quindi cambia il tuo IWebElement
a RemoteWebElement
che implementa l'interfaccia IWebElement
e avrai tutto ciò a tua disposizione.
In generale, provare a mantenerlo un'istanza di classe in quanto l'istanza dell'interfaccia IWebElement ha pochissime cose che effettivamente lo accompagnano. Se la tieni nell'istanza della classe RemoteWebDriver
e RemoteWebElement
otterrai molte più opzioni.
Lo stesso problema si verifica [qui] (https://github.com/seleniumhq/selenium/issues/1490), io credo veramente questa domanda merita più attenzione, non credo che nessuna delle risposte in modo lontano fornire una soluzione realistica. Nemmeno sicuro che ciò possa essere fatto ... –