Selenium WebDriver typing very slow in text field on Internet Explorer
Guys, In this Post I would like to talk about the slow typing issue that you might have faced in IE browser.
As we use sendkeys command to type in text field, however this command sometime doesn’t work as expected on IE browser. Example, if you want to type let say “Test Selenium” in any text field, then it types First “T” and then waits for 1-2 seconds before typing next character.
If you are facing the above issue on IE Browser, then you are at right place. Below is the solution to overcome from the above issue :
Follow below steps :
1) Use IE Driver Server of 32 bit instead of 64 bit
2) Set native events to false in your desired capability while intializing Internet explorer driver object
DesiredCapabilities capabilities = new DesiredCapabilities(); ieOptions.setCapability(InternetExplorerDriver.NATIVE_EVENTS, false); driver = new InternetExplorerDriver(capabilities);
You can also use InternetExplorerOptions class to set capabilities for driver object
InternetExplorerOptions ieOptions = new InternetExplorerOptions(); ieOptions.setCapability(InternetExplorerDriver.NATIVE_EVENTS, false); driver = new InternetExplorerDriver(ieOptions);
NOTE : Above 2 steps has solved slow typing issue on IE browser for me. Please test at your end and let me know in comment section, if above solution is not working for anyone.
Complete Example
import java.util.concurrent.TimeUnit; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.ie.InternetExplorerDriver; import org.openqa.selenium.ie.InternetExplorerOptions; import org.testng.annotations.Test; public class SampleTest { @Test public void test_01() { System.setProperty("webdriver.ie.driver", System.getProperty("user.dir") + "/IEDriverServer.exe"); InternetExplorerOptions ieOptions = new InternetExplorerOptions(); ieOptions.setCapability(InternetExplorerDriver.NATIVE_EVENTS, false); WebDriver driver = new InternetExplorerDriver(ieOptions); driver.manage().timeouts().implicitlyWait(50, TimeUnit.SECONDS); driver.get("http://www.google.com"); driver.findElement(By.name("q")).sendKeys("Test Selenium"); } }
If you really like the information provided above, please don’t forget to like us on Facebook, you can also leave the comment.