【问题标题】:SendKeys(Keys.Enter) not working in AppiumSendKeys(Keys.Enter) 在 Appium 中不起作用
【发布时间】:2017-06-07 07:38:46
【问题描述】:

我在文本框中输入了文本。现在我想按 Enter 键。为此,我传递了sendKey(Keys.Enter),它只是从文本框中剪切文本并且什么都不做。

 driver.findMobileElement("id", setLocationTextBoxId).sendKeys(parkingLocation+"\n");
 driver.getKeyboard().sendKeys(Keys.ENTER);

注意:"\n" 尚未工作。 sendKeyEvent/pressKeyEvent 方法不可用。

【问题讨论】:

  • 更好地使用 Actions 类来执行 Keys.ENTER 按键。
  • 请详细说明如何使用。
  • 为什么这被否决了。有人可以回答吗?这不是重复的。这是一道编程题。人们无法回答。那为什么要投反对票。我真的不明白,Stack Over flow 上发生了什么。

标签: java selenium appium


【解决方案1】:

要在 Android 设备上按 ENTER 键,您需要使用 Android KeyEvent 代码。 ENTER 的键码是66。你可以使用下面的代码sn-p。

driver.longPressKeyCode(66);

要获取所有Android KeyEvent代码,请参考这个官方link

【讨论】:

  • 你试过了吗。它不适合我。此外,您提到的链接适用于 Android,而不适用于 appium 驱动程序。
  • @DhirajAggarwal 是的。这个对我有用。我从去年开始一直在使用这个。仅供参考,appium 内部使用 Android 的 UIAutomatotar 向设备发送命令。正如您所提到的,它适用于 Android 而不是 appium,它适用于 ANDROID 的 APPIUM。
【解决方案2】:

试试这个!我有和你一样的问题,我很沮丧,直到我发现这个。希望对您有所帮助!

    public void pressEnterEditText(String elementName, String value) {
    AndroidElement tempElement = getAndroidElement(elementName);
    tempElement.click();
    driver.pressKey(new KeyEvent(AndroidKey.ENTER));
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-07-14
    • 2021-11-30
    • 1970-01-01
    • 2020-10-12
    • 2021-11-21
    • 2013-10-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多