简体   繁体   中英

How to press “ALT+S” in Selenium WebDriver using Java

I need to Send ALT+S Key event using Selenium Web Driver for an ``EditBox. Cursor Position is already set to EditBox I am using following code

driver.switchTo().activeElement().sendKeys(Keys.chord(Keys.ALT+"S"))

but it's not giving me desired result. It's Typing character 'S' in the Edit Box. I have tried another code but got the same result.

Actions action =new Actions(driver);
action.keyDown(Keys.ALT).sendKeys(String.valueOf('\u0053')).perform();

Thanks in Advance

I want to Add one more thing here. The code is working Properly in Firefox 12 but its not working properly in IE9

Cross-browser issues are rather hard to investigate as they are specific to particular driver and not WebDriver API.

Another variant that might work.

driver.findElement(By.xpath("your editbox's XPath")).sendKeys(Keys.chord(Keys.ALT, "s"));

As workaround I might recommend to take a look to AutoIT ( Official site ) or Robot ( Java Doc )

Try this. It might work, I haven't tried though

driver.findElement(By.xpath("your editbox's XPath"))
      .sendKeys(Keys.chord(Keys.ALT + Keys.S));

You can achieve this by using Robot class of java

    try{
        Robot robot=new Robot();
        robot.keyPress(KeyEvent.VK_ALT);
        Thread.sleep(1000);
        robot.keyPress(KeyEvent.VK_S);
        robot.keyRelease(KeyEvent.VK_ALT);
        robot.keyRelease(KeyEvent.VK_S);        
    }
    catch(Exception ex){
        System.out.println(ex.getMessage());
    }

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM