干货|app自动化测试之设备交互API详解

简介: Appium 提供了很多系统操作,在测试 APP 过程中会有一些特殊场景,比如来电话、短信,横竖屏切换,安装/卸载 APP,手机上的键盘操作,录屏等功能。下面介绍几个常用的设备交互 API。更多用法参见官网:http://appium.io/docs/en/about-appium/intro/## 模拟电话/短信用下面的命令模拟 GSM 电话和短信,注意:只能在模拟器上使用!
更多技术文章分享和免费资料领取
https://qrcode.ceba.ceshiren.com/link?name=article&project_id=qrcode&from=Aliyun&timestamp=1650873721

Appium 提供了很多系统操作,在测试 APP 过程中会有一些特殊场景,比如来电话、短信,横竖屏切换,安装/卸载 APP,手机上的键盘操作,录屏等功能。下面介绍几个常用的设备交互 API。
更多用法参见官网:
http://appium.io/docs/en/about-appium/intro/

模拟电话/短信

用下面的命令模拟 GSM 电话和短信,注意:只能在模拟器上使用!

self.driver.make_gsm_call("5551234567", GsmCallActions.CALL);

self.driver.send_sms('555-123-4567', 'Hey lol')

App操作

# 实现 APP 的安装
self.driver.install_app('/Users/johndoe/path/to/app.apk') 

# 检测 APP 是否被安装
self.driver.is_app_installed('com.example.AppName');

# 启动 APP
self.driver.launch_app()

weditor安装方式

键盘事件可以参考 Android 官网:
https://developer.android.com/reference/android/view/KeyEvent.html
下面分别展示了按键、长按、隐藏键盘、软键盘是否显示,代码如下:

self.driver.press_keycode(10)
self.driver.long_press_keycode(10)
self.driver.hide_keyboard()
self.driver.is_keyboard_shown()

设置系统剪贴板的内容:

self.driver.set_clipboard('happy testing')
self.driver.set_clipboard_text('happy testing')

获取到剪贴板的内容:

self.driver.get_clipboard()
self.driver.get_clipboard_text()

设备交互API就先讲这些,如果还想学习其他的设备交互 API或其他知识点,都可以在下方留言哦!

内容全面升级,4 个月 20+ 项目实战强化训练,资深测试架构师、开源项目作者亲授 BAT 大厂前沿最佳实践,带你一站式掌握测试开发必备核心技能(对标阿里P6+,年薪50W+)!直推 BAT 名企测试经理,普遍涨薪 50%+!

⬇️ 点击“阅读原文”,提升测试核心竞争力!
原文链接

⬇️ 点击“下方链接”,提升测试核心竞争力!+V~ ceshiren001
更多技术文章分享和免费资料领取
https://qrcode.ceba.ceshiren.com/link?name=article&project_id=qrcode&from=Aliyun&timestamp=1650873721
相关文章
|
18天前
|
Java Android开发
Rockchip系列之CAN APP测试应用实现(4)
Rockchip系列之CAN APP测试应用实现(4)
24 1
|
1月前
|
测试技术 UED Python
App自动化测试:高级控件交互技巧
Appium 的 Actions 类支持在移动应用自动化测试中模拟用户手势,如滑动、长按等,增强交互性测试。ActionChains 是 Selenium 的概念,用于网页交互,而 Actions 专注于移动端。在Python中,通过ActionChains和W3C Actions可以定义手势路径,例如在手势解锁场景中,先点击设置,然后定义触点移动路径执行滑动解锁,最后验证解锁后的元素状态。此功能对于确保应用在复杂交互下的稳定性至关重要。
35 5
|
3天前
|
XML 数据格式
Xpath高阶定位技巧,轻松玩转App测试元素定位!
XPath是一种用于XML文档中节点定位的语言,支持逻辑运算符(and、or、not)、轴定位、谓词和内置函数。
11 0
|
16天前
|
安全 开发工具 Android开发
3种方式自动化控制APP
自动化控制APP不管是在工作还是生活方面,都可以帮助我们高效地完成任务,节省时间和精力。本文主要介绍自动化控制APP的3种常用方式。
3种方式自动化控制APP
|
17天前
|
API 开发者
免费邮箱API发送邮件测试调试的方法和步骤
本文介绍了使用免费邮箱API如aoksend、Mailgun、SMTP2GO发送邮件的测试调试步骤:选择合适的API,获取访问密钥,配置邮件参数,编写测试代码,调试和测试,查看发送日志,以及优化改进邮件发送功能,确保其稳定运行。
|
17天前
|
测试技术 API 网络架构
Python的api自动化测试 编写测试用例
【4月更文挑战第18天】使用Python进行API自动化测试,可以结合`requests`库发送HTTP请求和`unittest`(或`pytest`)编写测试用例。以下示例: 1. 安装必要库:`pip install requests unittest` 2. 创建`test_api.py`,导入库,定义基础URL。 3. 创建继承自`unittest.TestCase`的测试类,包含`setUp`和`tearDown`方法。 4. 编写测试用例,如`test_get_users`,检查响应状态码和内容。 5. 运行测试:`python -m unittest test_api.py`
16 2
|
17天前
|
JSON 测试技术 API
Python的Api自动化测试使用HTTP客户端库发送请求
【4月更文挑战第18天】在Python中进行HTTP请求和API自动化测试有多个库可选:1) `requests`是最流行的选择,支持多种请求方法和内置JSON解析;2) `http.client`是标准库的一部分,适合需要低级别控制的用户;3) `urllib`提供URL操作,适用于复杂请求;4) `httpx`拥有类似`requests`的API,提供现代特性和异步支持。根据具体需求选择,如多数情况`requests`已足够。
15 3
|
22天前
|
XML 数据格式 Python
App测试中,强制等待和隐式等待谁更强?
本文介绍了在自动化脚本中添加等待以确保与应用程序同步的重要性。由于应用响应时间的不确定性,适当等待能防止脚本在操作未完成前继续执行,提高测试稳定性。等待包括强制等待(如`time.sleep()`)、隐式等待(全局设置查找元素的等待时间)和显式等待(根据预期条件等待)。示例代码展示了如何在Python的Appium测试中应用这些等待策略,以优化脚本的可靠性和与应用的同步。
24 0
|
1月前
|
API
Uni-app 如何上传文件, 使用的API是什么
Uni-app 如何上传文件, 使用的API是什么
|
2月前
|
JSON API 数据格式
如何获得淘宝/天猫app商品详情原数据 API 返回值说明
淘宝和天猫的API返回值通常会包含商品的详细信息。这些信息可能包括但不限于商品ID、商品标题、商品描述、价格、优惠信息、库存、发货地、物流方式等。具体的返回字段可能会随着API版本的更新而有所变化,因此建议参考淘宝/天猫开放平台官方提供的API文档来获取最准确的信息。