Search code examples
seleniumselenium-webdriverwebdriversendkeys

How to invoke sendKeys() method with uppercase letters through Selenium


I need some advice to solve the following issue:
I tried to write a text with uppercase letters into search bar, and I received this error message:
"Must provide a location for a move action."

Actions a=new Actions(driver); 
a.moveToElement(driver.findElement(By.cssSelector("#twotabsearchtextbox"))).keyDown(Keys.SHIFT).sendKeys("hello").build().perform();

Solution

  • I solved the problem by adding click() method before keyDown() method:

    a.moveToElement(driver.findElement(By.cssSelector("#twotabsearchtextbox")))
        .click()
        .keyDown(Keys.SHIFT)
        .sendKeys("hello")
        .build()
        .perform();