Collections:
JavascriptExecutor to Run JavaScript in Java
How to run JavaScript code on WebDriver with JavascriptExecutor in Java?
✍: FYIcenter.com
If you want run some client side JavaScript code in the same way as JavaScript code embedded in the Web page source code, you can use the JavascriptExecutor interface as describe below:
1. Load the Web page to a WebDriver object like (driver.get(url);).
2. Cast the WebDriver object to a JavascriptExecutor object like (executor = (JavascriptExecutor) driver;).
3. Execute any JavaScript code string by calling the executeScript() or executeAsyncScript() method on the JavascriptExecutor object.
Here is an example program that uses JavascriptExecutor to change the background color of the loaded Web page.
// JavascriptExecutorTest.java // Copyright (c) FYIcenter.com import org.openqa.selenium.*; public class JavascriptExecutorTest { public static void main(String[] args) { WebDriver driver = WebDriverLoader.load(args[0]); driver.get("http://sqa.fyicenter.com"); try { Thread.sleep(3*1000); String script = "document.body.style.backgroundColor=\"#ffeeee\";"; JavascriptExecutor executor = (JavascriptExecutor) driver; executor.executeScript(script); Thread.sleep(60*1000); } catch (Exception e) { } driver.quit(); } }
Compile and run the program, you will see that the background color of the Web page changes to pink in 3 seconds.
C:\fyicenter> javac -classpath \ .;\fyicenter\selenium\java\client-combined-3.141.59.jar \ JavascriptExecutorTest.java C:\fyicenter> java -classpath \ .;\fyicenter\selenium\java\client-combined-3.141.59.jar;\ \fyicenter\selenium\java\libs\guava-25.0-jre.jar;\ \fyicenter\selenium\java\libs\okhttp-3.11.0.jar;\ \fyicenter\selenium\java\libs\okio-1.14.0.jar;\ \fyicenter\selenium\java\libs\commons-exec-1.3.jar \ JavascriptExecutorTest Chrome
You can also try some other JavaScript code examples list below:
String script = "alert(\"Hello world!\")"; String script = "confirm(\"Hello world!\")";
⇒ Dump Elements with By.xpath() in Java
⇐ Submit Web Form with WebDriver in Java
2020-01-04, 1388🔥, 0💬
Popular Posts:
How to expand IPv6 addresses? In order to help your programming or testing tasks, FYIcenter.com has ...
How to perform regular expression pattern match with multiple occurrences? To perform a regular expr...
How to generate user birthday dates? Test user birthday dates are frequently needed in testing appli...
How to update hidden input value field value with WebDriver in Python? Normally, a hidden input valu...
How to convert a date and time to a standard format? Date and time can be displayed in a number of s...