JavaScript Executor in Selenium
JavaScript Executor in Selenium
public static void highlightElement(WebElement element, WebDriver driver){ public static void changeColor(String color, WebElement element, WebDriver driver){
//JavascriptExecutor jex = (JavascriptExecutor) driver; JavascriptExecutor jex = (JavascriptExecutor) driver;
String bgcolor = element.getCssValue("backgroundColor"); jex.executeScript("arguments[0].style.backgroundColor = '"+color+"'", element);
for (int i =0;i<10;i++){ try{
changeColor("rgb(0,200,0)",element,driver); Thread.sleep(20);}
changeColor(bgcolor,element,driver); } catch(InterruptedException e){
}
}
public static void drawBorder(WebElement element, WebDriver driver){ public static void generateAlert(WebElement element, WebDriver driver,String message){
JavascriptExecutor js = (JavascriptExecutor) driver; JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("arguments[0].style.border='3px solid red'",element);} js.executeScript("alert('"+message+"')");}
public static void clickEleByJS(WebElement element, WebDriver driver){ public static String getTitleByJs(WebDriver driver){JavascriptExecutor js = (JavascriptExecutor) driver;
JavascriptExecutor js = (JavascriptExecutor) driver; String Title = js.executeScript("return document.title;").toString();
js.executeScript("arguments[0].click();", element);} return Title;}
public static void refreshBrowser(WebDriver driver){ public static String getPageInnerTextByJs(WebDriver driver){JavascriptExecutor js = (JavascriptExecutor)
JavascriptExecutor js = (JavascriptExecutor) driver; driver;String PageText = js.executeScript("return document.documentElement.innerText;").toString();
js.executeScript("history.go(0)");} return PageText;}
SCROLL PAGES
public static void scrollPageDown(WebDriver driver){ public static void scrollIntoView(WebElement element,WebDriver driver){
JavascriptExecutor js = (JavascriptExecutor) driver; JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("window.scrollBy(0,600");} js.executeScript("arguments[0].scrollIntoView(true);",element);}
SCROLL TO BOTTOM