このトピックでは、WebDriver 記録モードを使って記録するスクリプトに、特殊キーを入力するコードを追加する方法について説明します。Silk Test 記録モードを使った特殊キーの処理についての情報は、API ドキュメントの typeKeys メソッドを参照してください。
WebDriver 記録モードでは、特殊キーをかぎ括弧で囲んで指定します。たとえば、<back_space> や <enter> のように指定します。
クラス org.openqa.selenium.Keys.java のすべての特殊キーを Silk4J では指定できます。キーの値は、大文字小文字を区別しません。
| Keys パラメーター | Keys パラメーター タイプ | 生成される Java コード |
|---|---|---|
| hello | 単純な文字列 |
driver.findElement(By.id("login-form:email")).sendKeys("hello");
|
| <back_space> | 特殊文字 |
driver.findElement(By.id("login-form:email")).sendKeys(Keys.BACK_SPACE);
|
| <control+a> | コード |
driver.findElement(By.id("login-form:email")).sendKeys(Keys.chord(Keys.CONTROL, "a"));
|
たとえば、次のような操作を記録したとします。

1 つの特殊文字またはキー コードだけを sendKeys メソッドの呼び出しで指定しているため、Mozilla Firefox を含むすべてのサポート ブラウザーでこれらの操作を再生できます。
driver.findElement(By.id("login-form:email")).sendKeys("helloo");
driver.findElement(By.id("login-form:email")).sendKeys(Keys.BACK_SPACE);
driver.findElement(By.id("login-form:email")).sendKeys(" hello");
driver.findElement(By.id("login-form:email")).sendKeys(Keys.chord(Keys.CONTROL, "a"));
driver.findElement(By.id("login-form:email")).sendKeys(Keys.BACK_SPACE);
driver.findElement(By.id("login-form:email")).sendKeys("bye");