2016-11-11 3 views
0

Ich wollte Selenium Webdriver verwenden, um auf eine Schaltfläche in einer Webseite zu klicken. Ich habe es erfolgreich auf Chrome Developer Tools, aber ich habe Fehler „nicht Variable finden“, während ich ausführen Javascript-Code war:

IJavaScriptExecutor js = driver as IJavaScriptExecutor; 
js.ExecuteScript("$('.XbuttonName').click();"); 

Ich dachte, es mit Berechtigungen verwandt ist, weil ich auch auf die Schaltfläche in einer gesunden Art und Weise klicken mit WebDriver wie folgt:

var button = driver.FindElement(By.ClassName("XclassName")); 
button.Click(); 

gibt es verschiedene Optionen, Skripte mit Selen-Treiber auszuführen?

+0

Sie führen HTML und nicht Javascript-Code aus. Bitte lesen Sie die JSE und wie es funktioniert. – JeffC

Antwort

0

Es klingt, als hätten Sie JQuery nicht importiert, das die Variable '$' verwendet. Siehe this question.

+0

Ich habe mein Original-Skript aktualisiert. – tdog

1

Eigentlich ist das Element unabhängig von der Seite selbst.

Ich benutze mit Java, können Sie etwas wie das versuchen?

var button = driver.FindElement(By.ClassName("XclassName")); 
jsE.ExecuteScript('arguments[0].click();',button); 
+0

wird Button-Variable anstelle von "0" in Argumenten kommen? Wenn du meintest, dass es nicht funktioniert hat. – tdog

Verwandte Themen