如何使用键盘发送大写字母?

时间:2013-07-15 09:17:21

标签: selenium webdriver selenium-webdriver

使用以下代码,它会在浏览器网址中发送密钥,而不是在谷歌搜索文本框中。 我想使用大写字母中的键盘事件在谷歌搜索文本字段中输入文本。

driver.get(https://www.google.co.in/);

    Actions builder = new Actions(driver);
    Action enterText = builder.click(driver.findElement(By.
                       cssSelector("input[type=text]"))).
                       keyDown(Keys.SHIFT).
                       sendKeys("my gmail").
                       keyUp(Keys.SHIFT).
                       build();
    enterText.perform();

3 个答案:

答案 0 :(得分:0)

您可以使用

 driver.findelement("YOURELEMENTLOCATOR").sendKeys(Keys.SHIFT,"yourtexttobetyped") 

实施例,

    driver.findElement(By.cssSelector("input[type=text]")).sendKeys(Keys.SHIFT,"stackoverflow") 

会发送给你'STACKOVERFLOW'。或者您可以直接在发送密钥中发送大写字母

    driver.findElement(By.cssSelector("input[type=text]")).sendKeys("STACKOVERFLOW")

:)

答案 1 :(得分:0)

下面的代码是大写密码的第一个字母。它对我来说很完美。请向其他人建议。

String password = "Done123!";
password = password.substring(0, 1).toUpperCase() + password.substring(1);
driver.findElement(By.cssSelector("input[type=text]")).sendKeys(password);

感谢。

答案 2 :(得分:0)

简单的辅助功能

def capitalized(driver, string):
    for char in string:
        if char.isUpper():
            driver.send_keys(Keys.SHIFT, char)
        else:
            driver.send_keys(char)