如果你是一個(gè)JS高手的話可以在WebDriver 中直接執(zhí)行JS代碼來提升效率,一般用到執(zhí)行js的場景主要分一下兩種:
	  在頁面加載的時(shí)候執(zhí)行JS
	  在某個(gè)已經(jīng)定位了的元素上執(zhí)行js
	Demos:
	package org.coderinfo.demo;
	import org.openqa.selenium.By;
	import org.openqa.selenium.JavascriptExecutor;
	import org.openqa.selenium.WebDriver;
	import org.openqa.selenium.WebElement;
	import org.openqa.selenium.chrome.ChromeDriver;
	public class ExecuteJSOnPageLoading {
	private static final String URL = "file:///C:/user/Desktop/Selenium/jsdemo.html";
	public static void main(String[] args) {
	WebDriver driver = new ChromeDriver(); // create a chrome driver
	driver.manage().window().maximize(); // max size the chrome window
	driver.get(URL); // open URL with the chrome browser
	try {
	Thread.sleep(2000); // wait for web loading
	} catch (InterruptedException e) {
	e.printStackTrace();
	}
	// Execute JavaScript on page loading
	((JavascriptExecutor)driver).executeScript("alert("Hello,World!")");
	ele.click();
	try {
	Thread.sleep(5000);
	} catch (InterruptedException e) {
	e.printStackTrace();
	}
	driver.quit(); // close webdriver
	}
	}
	package org.coderinfo.demo;
	import org.openqa.selenium.By;
	import org.openqa.selenium.JavascriptExecutor;
	import org.openqa.selenium.WebDriver;
	import org.openqa.selenium.WebElement;
	import org.openqa.selenium.chrome.ChromeDriver;
	public class ExecuteJSOnWebElement {
	private static final String URL = "file:///C:/user/Desktop/Selenium/jsdemo.html";
	public static void main(String[] args) {
	WebDriver driver = new ChromeDriver(); // create a chrome driver
	driver.manage().window().maximize(); // max size the chrome window
	driver.get(URL); // open URL with the chrome browser
	try {
	Thread.sleep(2000); // wait for web loading
	} catch (InterruptedException e) {
	e.printStackTrace();
	}
	/*
	* Execute JavaScript on web element
	*/
	WebElement ele = driver.findElement(By.id("js")); // locate web element
	((JavascriptExecutor) driver)
	.executeScript(
	"arguments[0].onclick=function(){alert('js has been execute!');}",
	ele); // add js on the web element
	ele.click();
	try {
	Thread.sleep(5000);
	} catch (InterruptedException e) {
	e.printStackTrace();
	}
	driver.quit(); // close webdriver
	}
	}