How to hold key down with Selenium?



We can hold a key down with Selenium webdriver. We mostly utilize the CONTROL/SHIFT/ALT keys to hold down and then click on other keys. So, only mentioning the modifier keys like keys.CONTROL/ keys.SHIFT or Keys.ALT is not sufficient.

To hold down a key simultaneously while another key is being pressed, we use the keyDown() and keyUp() methods. Both these methods accept the modifier key as a parameter.

The action of these two methods on a key yields a special functionality of a key. All these methods are a part of Actions class in Selenium. We have to add the import org.openqa.selenium.interactions.Actions package to our code for using the methods under Actions class.

Example

import org.openqa.selenium.By; import org.openqa.selenium.Keys; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import java.util.concurrent.TimeUnit; import org.openqa.selenium.interactions.Action; import org.openqa.selenium.interactions.Actions; public class MetdKeyDown{    public static void main(String[] args) { System.setProperty("webdriver.chrome.driver","C:\Users\ghs6kor\Desktop\Java\chromedriver.exe");       WebDriver driver = new ChromeDriver();       String url = "https://www.tutorialspoint.com/index.htm";       driver.get(url);       driver.manage().timeouts().implicitlyWait(4, TimeUnit.SECONDS);       // identify element       WebElement l = driver.findElement(By.id("gsc-i-id1"));       // Actions class       Actions a = new Actions(driver);       // moveToElement() and then click()       a.moveToElement(l).click();       //enter text with keyDown() SHIFT key ,keyUp() then build() ,perform()       a.keyDown(Keys.SHIFT);       a.sendKeys("hello").keyUp(Keys.SHIFT).build().perform();       driver.quit()    } }

Output

Updated on: 2020-09-18T06:28:26+05:30

7K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements