¿Qué tal una versión ligeramente simplificada de la bonita idea del método de extensión de @Morten Christiansen?
public static object Execute(this IWebDriver driver, string script)
{
return ((IJavaScriptExecutor)driver).ExecuteScript(script);
}
// usage
var title = (string)driver.Execute("return document.title");
o tal vez la versión genérica:
public static T Execute<T>(this IWebDriver driver, string script)
{
return (T)((IJavaScriptExecutor)driver).ExecuteScript(script);
}
// usage
var title = driver.Execute<string>("return document.title");
arguments[0].click();
no me funciona? No tengo ninguna excepción cuando ejecuto mi código, pero no hace clic en el botón.ExecuteJavascript
no es solo un método en eldriver
?WebDriver.Support.dll
disponible a través de NuGet en elSelenium.Support
paquete), hay un método de extensión que maneja la conversión por usted y hace que parezca que el controlador tiene unExecuteJavaScript
método.