如何使用 appium 自动化 android 手机后退按钮

Posted

技术标签:

【中文标题】如何使用 appium 自动化 android 手机后退按钮【英文标题】:How to automate the android phone back button using appium 【发布时间】:2015-08-28 09:26:31 【问题描述】:

我正在使用 Appium(python 客户端库)为 android 上的混合移动应用程序进行测试自动化。我还没有想出任何方法来自动化或创建使用“电话后退”按钮返回应用程序上一页的手势。有没有可以使用的驱动功能?我用 self.driver.navigate().back() 试试运气[希望这会模拟与 Selenium 中相同的行为以导航到上一个 URL],但无济于事。任何人都可以建议出路吗?

【问题讨论】:

self.driver.back() 是最简单的解决方案。 可能是这个问题github.com/appium/appium/issues/4742 它建议将 unicodeKeyboard 设置为 False 【参考方案1】:

是的,试试driver.back(),它模拟了系统back的功能。

【讨论】:

【参考方案2】:

最近我正在自动化一个本地应用程序,我必须点击后退按钮。

我尝试了下面的代码,它对我有用。

Android 后退按钮的代码。

driver.pressKeyCode(AndroidKeyCode.BACK);

这将点击返回按钮

【讨论】:

【参考方案3】:

driver.sendKeyEvent(AndroidKeyCode.BACK);

用 Java 完成这项工作

【讨论】:

Java中没有这种方法【参考方案4】:

我想这可能取决于您使用的是什么版本的客户端库,因为在 Java 中 driver.navigate().back() 运行良好。

【讨论】:

是的,效果很好。谢谢 Kristaps Mezavilks【参考方案5】:

使用这个它可以 100% 工作

driver.pressKeyCode(4);

因为“4”是 Android 上 Back press 的关键提示

【讨论】:

问题是针对 appium-python 客户端的。【参考方案6】:

对于appium-python-client,要返回你应该调用这个方法:

driver.press_keycode(4)

【讨论】:

【参考方案7】:

我使用了 KeyEvent。

import io.appium.java_client.android.AndroidDriver;
import io.appium.java_client.android.nativekey.AndroidKey;

driver.pressKey(new KeyEvent().withKey(AndroidKey.BACK));

【讨论】:

【参考方案8】:

可能晚了,但很有用 要单击android 设备back button,以下行将帮助您。

helper.driver.pressKeyCode(AndroidKeyCode.BACK);

点击android最近的应用程序按钮下面的行会帮助你。

helper.driver.pressKeyCode(187);

【讨论】:

以上是关于如何使用 appium 自动化 android 手机后退按钮的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 appium 自动化 android 手机后退按钮

如何使用 Appium 自动接受警报 -- 权限 Android 6.0

appium如何打开Genymotion(android)中的UC浏览器

如何使用 selenium 或 appium 在 android 上自动化 chrome 浏览器?

如何通过浏览器登录在 Android 上自动化 appium 测试?

如何使用 Charles Proxy 配置 Appium Android?