appium自动化对已打开的app操作

一、说明

由于 Appium 4.x 版本对会话的管理方式发生了变化,直接重用会话的功能可能不再支持。你可能需要调整测试策略,采用新的方法与已经打开的应用进行交互,比如使用 ADB,就为了找这个我找了很久网上都没有说明,老版本的appium支持对session重复使用,也就是操作之前的session即可,这个目的主要是为了调试方便使用

二、adb操作:

你可以通过 ADB(Android Debug Bridge)直接与已经打开的应用进行交互。以下是一些常用的 ADB 命令示例,类似这种直接操作元素:

  • 输入文本

    adb shell input text "你的文本"

  • 点击元素(根据元素的坐标):

    adb shell input tap x y

三、appium操作:

其实很简单,就是直接不打开任何app,直接和对应设备建立连接操作即可:

复制代码
from appium import webdriver

# 使用有效的能力
desired_caps = {
    'platformName': 'Android',
    'deviceName': '你的设备名称',
    # 不需要提供 app,因为应用已经打开
}

# 尝试连接到已打开的会话(可能有限支持)
driver = webdriver.Remote('http://localhost:4723/wd/hub', UiAutomator2Options().load_capabilities(desired_caps))

# 进行操作,例如查找元素和点击
element = driver.find_element("xpath", "//android.widget.Button[@text='按钮文本']")
element.click()
相关推荐
Web4Browser4 小时前
Headless 浏览器自动化适合哪些任务?巡检、截图和提交动作要分级
运维·前端·自动化
大博士.J4 小时前
视频号主体违规与认证上限?正确的解决方式
运维·python·自动化
Chengbei116 小时前
SoloXSS:一款现代化的自托管 XSS平台
人工智能·安全·web安全·网络安全·自动化·xss·安全架构
BJHHZX199118 小时前
北京华恒智信为制造行业破解自动化伪升级难题,落地人机协作三阶段减编增效方案
自动化·绩效考核·人力资源管理·人机协作·员工激励
程序员吕洞宾20 小时前
开源多维表格SmartTable V1.6:自动化工作流,把重复操作交给系统即可
开源·自动化·github·多维表格·飞书多维表
2301_7803039021 小时前
网络安全、自动化运维、ERP、CRM、MES
运维·web安全·网络安全·自动化·安全威胁分析
csg110721 小时前
电路板抗干扰:电容、电感和弧线布线的应用
单片机·嵌入式硬件·物联网·自动化
环境栈笔记1 天前
多账号浏览器选型检查清单:Profile、权限、Session 和任务日志怎么评估
前端·人工智能·后端·自动化
jieyucx1 天前
Shell实战:无限循环监控Nginx服务,异常自动重启+双份日志留存
linux·运维·nginx·自动化·shell
workflower1 天前
室内外配送机器人-应用路径
人工智能·机器学习·设计模式·矩阵·自动化