2012-01-18 12 views
1

webdriverのボタンに付いているjavascriptメソッドを実行しようとしています。webdriverのボタンに付いているjavascriptメソッドを実行するにはどうすればよいですか?

ように私はいくつかのことがあります。このボタンは、それに接続されている"onclick=javascript:method()"を持って

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

。だから、私はそれがうまく動作するブラウザでテストを実行します。しかし、もし私がhtmlunitでそれを実行すると、onclickメソッドは実行されません。

私はこのような何か試してみました:

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

ではなく、あなたはいくつかのオプション(以下の例では、C#である)持っているか「」

答えて

2

でメソッド名を入力してください:

トリガーのjQueryを経由して、クリックイベント:

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

トリガクリックイベントjavascriptを経由して:

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

そして最後にではなく、少なくとも、直接関数を呼び出す:これらのどれもが本当に望ましいされていないことを

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

注意を。 javascriptが期待どおりに動作するようにHtmlUnitを適切に設定する必要があります。

関連する問題