一尘不染

将符号(“ @”)转换为CharSequence

selenium

我正在用selenium测试站点,我需要向其中一个字段发送电子邮件。到目前为止,我正在使用以下Java方法:

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

但是由于(对我而言)一个未知的原因,这正是将这个值发送到字段:

testvexample.com

(因此,基本上将“ @”替换为“ v”)

出于好奇:我是捷克人,有捷克语键盘。写“ @”符号的一种快捷方式是rightAlt + v,因此我相信可以连接…

因此,我正在搜索始终写有“ @”符号的任何“防弹” methot。任何帮助表示赞赏。

编辑
sendKeys是Selenium的方法,它模拟在键盘上的键入。javadoc在这里:http
:
//selenium.googlecode.com/svn/trunk/docs/api/java/org/openqa/selenium/WebElement.html#sendKeys%28java.lang.CharSequence…%29


阅读 257

收藏
2020-06-26

共1个答案

一尘不染

以下应该工作:String email = "test\u0040example.com";

道歉,误解了这个问题。

我认为您将必须sendKeys使用Keys枚举中的适当值来调用以模拟获得标志的方式。Keys.ALT与和弦一起使用“ v”:

sendKeys(Keys.chord(Keys.ALT, "v"));
2020-06-26