Executing JavaScript In HtmlUnit Driver For Selenium WebDriver Test

Now all of you lot are good aware about HtmlUnit Driver every bit nosotros accept created as well as executed illustration headless browser attempt In THIS POST as well as every bit good learnt how to enshroud useless alert message logs from console In previous post. One some other affair you lot ask to larn earlier using It Is how to execute JavaScript alongside HtmlUnit driver. You tin sack VIEW EXAMPLES of JavaScript executor to know Its
usage In selenium WebDriver tests.

By default, JavaScript Is non enabled In HtmlUnit driver. So If you lot volition endeavor to execute JavaScript In HtmlUnit driver attempt therefore It volition demonstrate you lot fault message In console as well as your attempt illustration volition fail.

I accept used JavaScript executor In bellow given illustration to acquire page title. Execute bellow given illustration to run into error.

package Testing_Pack;  import java.util.concurrent.TimeUnit; import java.util.logging.Level; import java.util.logging.Logger; import org.openqa.selenium.JavascriptExecutor; import org.openqa.selenium.htmlunit.HtmlUnitDriver; import org.testng.annotations.AfterTest; import org.testng.annotations.BeforeTest; import org.testng.annotations.Test;  world flat htmlDriver {    HtmlUnitDriver driver;  String pagetitle;   @BeforeTest  world void setup() throws Exception {   //Initializing HtmlUnitDriver.   driver = novel HtmlUnitDriver();   driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);      //To enshroud warnings logs from execution console.   Logger logger = Logger.getLogger("");   logger.setLevel(Level.OFF);      //Opening URL In HtmlUnitDriver.   driver.get("http://www.google.com");  }   @AfterTest  world void tearDown() throws Exception {   //Closing HtmlUnitDriver.   driver.quit();  }   @Test  world void googleSearch() {     //Get electrical flow page championship using javascript executor.   JavascriptExecutor javascript = (JavascriptExecutor) driver;   String pagetitle=(String)javascript.executeScript("return document.title");     System.out.println("My Page Title Is  : "+pagetitle);      } }


When you lot run to a higher house example, It volition demonstrate you lot this fault message : java.lang.UnsupportedOperationException: Javascript is non enabled for this HtmlUnitDriver instance.

We tin sack resolve to a higher house fault In 2 unlike ways.
1. Passing truthful keyword with HtmlUnitDriver on Initialization every bit bellow.
HtmlUnitDriver driver = novel HtmlUnitDriver(true);

2. Using setJavascriptEnabled(true) method every bit bellow.
HtmlUnitDriver driver = novel HtmlUnitDriver(); driver.setJavascriptEnabled(true);

Full illustration alongside enabled JavaScript for HtmlUnit driver Is every bit bellow. Now It volition live on executed successfully.

package Testing_Pack;  import java.util.concurrent.TimeUnit; import java.util.logging.Level; import java.util.logging.Logger; import org.openqa.selenium.JavascriptExecutor; import org.openqa.selenium.htmlunit.HtmlUnitDriver; import org.testng.annotations.AfterTest; import org.testng.annotations.BeforeTest; import org.testng.annotations.Test;  world flat htmlDriver {    HtmlUnitDriver driver;  String pagetitle;   @BeforeTest  world void setup() throws Exception {   //Enabling JavaScript on Initialization of HtmlUnitDriver.   driver = novel HtmlUnitDriver(true);     driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);      //To enshroud warnings logs from execution console.   Logger logger = Logger.getLogger("");   logger.setLevel(Level.OFF);      //Opening URL In HtmlUnitDriver.   driver.get("http://www.google.com");  }   @AfterTest  world void tearDown() throws Exception {   //Closing HtmlUnitDriver.   driver.quit();  }   @Test  world void googleSearch() {     //Get electrical flow page championship using javascript executor.   JavascriptExecutor javascript = (JavascriptExecutor) driver;   String pagetitle=(String)javascript.executeScript("return document.title");     System.out.println("My Page Title Is  : "+pagetitle);      } }

Above illustration volition impress page championship In console which Is retrieved using JavaScript executor. Next post service volition demonstrate you lot how to execute headless browser attempt In unlike browsers.


More interesting articles here :Generation Enggelmundus Internet Marketing Tool here :Zeageat IM http://www.software-testing-tutorials-automation.com/
Post a Comment (0)
Previous Post Next Post