SELENIUM2 使用JavascriptExecutor在頁面Javascipt執行

目的:javascript

1. 執行一段JS,來改變HTML
2. 一些非標準控件沒法用selenium2的API時,能夠執行JS的辦法來取代java


主要操做:
JavascriptExecutor j = (JavascriptExecutor)driver;
j.executeScript("alert('hellow rold!')");spa

說明:
1. executeScript這個方法的參數爲字符串,爲一段JS代碼
2. 注意,JS代碼須要自已根本項目的需求來編寫!ip

executeScript(java.lang.String arg0, java.lang.Object... arg1);字符串

第二個參數是一個可變參數,

1. 第二個參數的寫法:
JDK1.6~1.7 
不使用第二個參數
executor.executeScript("alert('aaa');");

使用第二個參數:
executor.executeScript("alert('aaa');","argument1","argument2");
executor.executeScript("alert('aaa');", new Object[]{"argument1","argument2"});

JDK1.8
不使用第二個參數
executor.executeScript("alert('aaa');", new Object[]{});

使用第二個參數:
executor.executeScript("alert('aaa');", new Object[]{"argument1","argument2"});

2. 第二個參數的做用。
實際上是給第一個參數指定javascript代碼傳入值,這些值能夠經過在javascript裏使用arguments[0],arguments[1]來獲取。
executor.executeScript("alert(arguments[0]);", new Object[]{"aa111"});selenium

相關文章
相關標籤/搜索