揭秘高级控件技巧:让您的 App 与众不同
简介
APP 的控件元素不仅涵盖了基础用户界面操作,还包括用户与应用程序中更复杂、功能丰富的空间之间的互动。这种交互远不止于简单的按钮或输入框。通过借助 Appium 的 Actions,能够完成对应用程序进行手势识别的交互。这意味着可以通过各种手势,如滑动、缩放、长按等,实现更灵活、直观的用户体验。这种高级交互使得应用程序更具交互性和吸引力,为用户提供了更深入参与应用功能的途径。
Actions 介绍
Actions 是 Appium 中的关键类,专门设计用于执行各种手势和交互操作,包括但不限于点击、滑动、长按等。这个类的存在使得在移动端应用程序的自动化测试中,通过 Appium 可以轻松地控制设备活模拟器执行多样化的手势操作,通过 Actions ,测试人员可以模拟用户真实的操作行为,确保应用在不同交互场景下的稳定性和可靠性。这一功能对于移动应用的全面测试和质量保证至关重要。
ActionChains 和 Actions 区别
ActionChains 是 Selenium WebDriver 中的一个类,可用于执行一系列的操作,如鼠标悬停、拖放、按下键盘等。
而 Actions 是 Appium 中的一个类,用于执行手势和交互操作,如点击、滑动、长按等。
尽管两者的名称相似,但它们是针对不同的自动化测试环境而设计的。
ActionChains 适用于网页自动化测试,通过 Selenium WebDriver 控制浏览器执行各种交互操作,并提供了一系列方法来模拟用户的行为。
而 Actions 则适用于移动端应用程序的自动化测试,通过 Appium 控制设备或模拟器执行各种手势操作。
除了适用于不同的自动化测试环境之外, ActionChains 和 Actions 的用法和语法也略有不同。在 Selenium WebDriver 中使用 ActionChains 时,可以通过链式调用方法来执行一系列操作,并使用 perform() 方法来触发操作的执行。而在 Appium 中使用 Actions 时,需要创建 TouchAction 对象,并使用其提供的方法来执行手势操作,并使用 perform() 方法来触发手势的执行。
Actions 用法
在使用 ActionChains 进行用户交互自动化时,首先需要导入 ActionChains 类以及其他相关模块,然后定义一个 ActionChains 实例,并将 driver 传入。之后,可以通过定义输入源和具体的动作来实现各种用户交互操作。
导入 ActionChains 类及其他模块
定义 ActionChains 实例 'actions',传入 driver
定义输入源
定义动作
执行动作
滑动解锁示例
安装手势密码锁 app(TouchAction.apk)
打开应用
点击【设置手势】
完成手势操作(如图)
实现手势滑动时,通常需要结合坐标,并可通过设置设备的输入选项,从界面中找到具体的坐标点。
手势滑动路径如下图所示:
Python 版本
总结
Actions 用法
滑动解锁示例
免费领取:测试资料+测试用例+简历模板+测试文档
版权声明: 本文为 InfoQ 作者【测试人】的原创文章。
原文链接:【http://xie.infoq.cn/article/1df724267ea7798708d27566d】。文章转载请联系作者。
评论