如何使用Appium输入电子邮件地址

时间:2015-07-15 05:59:51

标签: android appium

当我在使用Appium进行Android自动化期间尝试输入像“test@gmail.com”这样的电子邮件地址时,它总是以“test2gmail.com”结尾。我的代码如下:

driver = new AndroidDriver(new         URL("http://127.0.0.1:4723/wd/hub"),capabilities);
WebElement email = driver.findElementby(...);
email.sendKeys("test@gmail.com");

我也尝试过:

WebElement email = driver.findElementby(...);
email.sendKeys("test");
email.click();
driver.sendKeyEvent(77);//Key code constant: '@' key.
email.sendKeys("gmail.com");

它也不起作用。有人可以帮我这个。

3 个答案:

答案 0 :(得分:1)

Galaxy Note 2上发生了这种情况

正如@LagiNatoRRR所说,你可以试试unicode,但在python中你可能需要制作那个字符串

java.io.IOException: 6 Problem encountered on line: 2
        at weka.core.converters.CSVLoader.getInstance(CSVLoader.java:1373)
        at weka.core.converters.CSVLoader.readData(CSVLoader.java:908)
        at weka.core.converters.CSVLoader.readHeader(CSVLoader.java:1213)
        at weka.core.converters.CSVLoader.getStructure(CSVLoader.java:968)
        at weka.core.converters.AbstractFileLoader.runFileLoader(AbstractFileLoader.java:332)
        at weka.core.converters.CSVLoader.main(CSVLoader.java:220)

尝试传递这些功能,它对我有用:

u"test\u0040gmail.com"

答案 1 :(得分:0)

假设您的电子邮件字段具有ID email

JavascriptExecutor js;
if (driver instanceof JavascriptExecutor)
  js = (JavascriptExecutor)driver;
js.executeScript("document.getElementById('email').setAttribute('value', 'test@gmail.com')");

来源:Set value of input instead of sendKeys() - selenium webdriver nodejs

答案 2 :(得分:0)

使用@:

的unicode表示的另一种变体
email.sendKeys("test\u0040gmail.com");