appium获取通知栏内容和短信内容

本文主要介绍了在使用Appium进行自动化测试时,如何获取Android设备的通知栏内容。在执行adb shell am broadcast -a io.appium.settings.notifications命令后遇到权限问题,需要手动在设备设置的‘Notification access’页面开启Appium Settings的权限。通过解决这个问题,成功获取通知栏的消息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

记录appium获取通知栏内容时,遇到的坑。
在做push类自动化测试时,需要获取到通知栏内是否有收到消息。如何才能获取到通知栏内容呢。第一想法可能是,直接打开通知栏。但是这个方法不同的手机定位时会有限制。appium setting app已经提供了方法 appium setting使用说明
在这里插入图片描述
但是在执行adb shell am broadcast -a io.appium.settings.notifications命令后会报ations
Broadcasting: Intent { act=io.appium.settings.notifications flg=0x400000 }
Broadcast completed: result=-1, data="Appium Settings helper has no access to the system notifications. The access must be granted manually via ‘Notification access’ page in device Settings."错误
是因为未打开appium setting的通知使用权限,改权限比较难找,最后在设置的搜索中,搜索通知才能看到
在这里插入图片描述
在这里插入图片描述
最终获取到的通知栏内容
在这里插入图片描述

Appium是一个跨平台的自动化测试工具,主要用于移动应用的UI测试,它支持多种编程语言,包括Python。要使用Python与Appium结合快速获取界面内容,通常需要以下几个步骤: 1. **安装依赖**:首先需要安装`appium-python-client`库,它是Appium的Python客户端,可以使用pip进行安装: ``` pip install appium-python-client ``` 2. **启动Appium服务器**:在本地或远程机器上运行Appium服务器,并确保指定的设备或模拟器已连接并可用。 3. **初始化Appium客户端**:通过Python创建AppiumClient实例,设置合适的参数,如DesiredCapabilities(设备信息、目标应用等): ```python from appium import webdriver capabilities = { 'platformName': 'Android', 'platformVersion': '9.0', 'deviceName': 'Your Device Name', 'appPackage': 'com.your.app.package', 'appActivity': '.MainActivity' } driver = webdriver.Remote('http://localhost:4723/wd/hub', capabilities) ``` 4. **查找元素**:使用WebDriver API找到页面上的UI元素,例如`find_element_by_*`方法(如ID、名称、标签名等): ```python element = driver.find_element_by_id('your_element_id') ``` 5. **获取元素内容**:对于文本元素,可以直接读取`text`属性;如果是其他类型(如复选框、下拉列表),可能需要进一步操作才能获取值: ```python text_content = element.text ``` 6. **结束会话**:完成任务后,记得关闭driver: ```python driver.quit() ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值