selenium之執行JavaScript指令碼
阿新 • • 發佈:2019-02-01
在有些情況下需要使用JavaScript指令碼來輔助測試,可以通過用JS賦值或者用js執行點選操作等方式:
一、宣告js指令碼
String js =” alert(\"hello,this is a alert!\")”;
執行js指令碼
((JavascriptExecutor) driver).executeScript(js);
執行之後會在瀏覽器上彈出一個alert,顯示內容是“hello,this is a alert!”
二、這個方法比較適用某些元素不易點選的情況下使用,比如網頁內容太長,當前視窗太長,想要點選那些不在當前視窗可以看到元素可以用此方法。
((JavascriptExecutor) driver).executeScript(String js, Object args);
此方法有兩個引數,第一個是js指令碼,至於js指令碼你像寫點選的或者輸入的指令碼都可以,我們這裡舉例為點選操作。第二個引數是:要點選的元素。
比如我要點選百度搜索的搜尋按鈕,可以這樣寫:
((JavascriptExecutor) driver).executeScript(“arguments[0].click();”, driver.findElement(By.id(“su”)));