官术网_书友最值得收藏!

The sendKeys() method

ThesendKeys  action is applicable for textbox or textarea HTML elements. This is used to type text into the textbox. This will simulate the user keyboard and types text into WebElements exactly as a user would. The API syntax for the sendKeys() method is as follows:

void sendKeys(java.lang.CharSequence...keysToSend)

The input parameter for the preceding method is CharSequence of text that has to be entered into the element. This method doesn't return anything. Now, let's see a code example of how to type a search text into the Search box using the sendKeys() method:

@Test
public void elementSendKeysExample() {
WebElement searchBox = driver.findElement(By.name("q"));
searchBox.sendKeys("Phones");
searchBox.submit();
assertThat(driver.getTitle())
.isEqualTo("Search results for: 'Phones'");
}

In the preceding code, the sendKeys() method is used to type the required text in the textbox element of the web page. This is how we deal with normal keys, but if you want to type in some special keys, such as Backspace, Enter, Tab, or Shift, we need to use a special enum class of WebDriver, named Keys. Using the Keys enumeration, you can simulate many special keys while typing into a WebElement.

Now let's see some code example, which uses the Shift key to type the text in uppercase in the Search Box:

@Test
public void elementSendKeysCompositeExample() {
WebElement searchBox = driver.findElement(By.name("q"));
searchBox.sendKeys(Keys.chord(Keys.SHIFT,"phones"));
searchBox.submit();
assertThat(driver.getTitle())
.isEqualTo("Search results for: 'PHONES'");
}

In the preceding code, the chord() method from the Keys enum is used to type the key, while the text specified is being given as an input to be the textbox. Try this in your environment to see all the text being typed in uppercase.

主站蜘蛛池模板: 济阳县| 大埔区| 团风县| 丰县| 恩施市| 香格里拉县| 大悟县| 城口县| 景泰县| 武川县| 绥芬河市| 电白县| 南溪县| 班戈县| 石首市| 清新县| 武鸣县| 邵阳市| 北宁市| 香港 | 浪卡子县| 南宁市| 南宁市| 汝州市| 桐乡市| 同德县| 石林| 宜春市| 天镇县| 南丹县| 满洲里市| 盐池县| 邵阳市| 巩留县| 长垣县| 蓬溪县| 类乌齐县| 无棣县| 临高县| 杂多县| 江阴市|