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()
相关推荐
九章云极AladdinEdu1 天前
超参数自动化调优指南:Optuna vs. Ray Tune 对比评测
运维·人工智能·深度学习·ai·自动化·gpu算力
学生信的大叔1 天前
【Python自动化】Ubuntu24.04配置Selenium并测试
python·selenium·自动化
GAOJ_K1 天前
弧形导轨如何提升新能源汽车的能效和续航里程?
科技·自动化·汽车·制造
全栈工程师修炼指南1 天前
告别手动构建!Jenkins 与 Gitlab 完美协作,根据参数自动化触发CI/CD流水线实践
运维·ci/cd·自动化·gitlab·jenkins
Source.Liu2 天前
【Pywinauto库】12.2 pywinauto.element_info 后端内部实施模块
windows·python·自动化
Source.Liu2 天前
【Pywinauto库】12.1 pywinauto.backend 后端内部实施模块
开发语言·windows·python·自动化
宇钶宇夕2 天前
西门子 S7-200 SMART PLC 核心指令详解:从移位、上升沿和比较指令到流水灯控制程序实战
运维·算法·自动化
大视码垛机2 天前
速度与安全双突破:大视码垛机重构工业自动化新范式
大数据·数据库·人工智能·机器人·自动化·制造
疯狂的维修2 天前
关于Gateway configration studio软件配置网关
网络协议·c#·自动化·gateway
arbboter2 天前
【自动化】深入浅出UIAutomationClient:C#桌面自动化实战指南
运维·c#·自动化·inspect·uiautomation·uia·桌面自动化