4

セレンを使用してサイトをテストしていますが、いずれかのフィールドに電子メールを送信する必要があります。これまでのところ、私はこのJavaメソッドを使用しています。

 String email = "test@example.com"
 WebElement emailField = driver.findElement(By.id("mainForm:accountPanelTabId:1:accountEmails");
 emailField.sendKeys(email);

しかし、(私にとって)未知の理由から、これはまさにこの値をフィールドに送信しています:

testvexample.com

(したがって、基本的に「@」は「v」に置き換えられました)

好奇心から:私はチェコ人で、チェコのキーボードを持っています。「@」記号を書くための1つのショートカットはrightAlt+vなので、これを接続できると思います...

だから私は常に「@」記号を書く「防弾」メトットを探しています。助けていただければ幸いです。

sendKeys の編集はSeleniumのメソッドであり、キーボードでの入力をシミュレートします。javadocはここにあります:http ://selenium.googlecode.com/svn/trunk/docs/api/java/org/openqa/selenium/WebElement.html#sendKeys%28java.lang.CharSequence ...%29

4

1 に答える 1

0

以下が機能するはずです。String email = "test\u0040example.com";

以前に質問を読み間違えたことをお詫びします。

アットマークを取得する方法をシミュレートするにはsendKeys、列挙型の適切な値を使用して呼び出す必要があると思います。Keysコード内の「v」と一緒に使用Keys.ALTします。

sendKeys(Keys.chord(Keys.ALT, "v"));
于 2011-08-25T07:24:15.990 に答える