2012-01-18 58 views
1

我試圖執行一個JavaScript方法,它附加到webdriver中的一個按鈕。如何執行附加到webdriver按鈕的javascript方法?

我有一些事情,如:

driver.FindElement(By.Id(Button)).click(); 

此按鈕連接到它的"onclick=javascript:method()"。所以當我在瀏覽器上運行測試時,它工作正常。但是,如果我在htmlunit中運行它,onclick方法不會執行。

我想是這樣的:

IJavascriptExecutor js = (IJavascriptExecutor) driver; 
js.executeScript(""); 

,但不知道如何在「」

回答

2

你有幾個選項(下面的例子是在C#)輸入法名稱:

通過jQuery觸發點擊事件:

((IJavaScriptExecutor)driver).ExecuteScript("$(arguments[0]).click();", element); 

通過javascript觸發點擊事件:

((IJavaScriptExecutor)driver).ExecuteScript("arguments[0].click();", element); 

最後但並非最不重要的,直接調用函數:

((IJavaScriptExecutor)driver).ExecuteScript("someFunction();"); 

注意,這些都不是真正的優先考慮;您應該考慮正確配置HtmlUnit,以便JavaScript按預期工作。

相關問題