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()
相关推荐
画中有画14 小时前
pc浏览器网页如何实现自动化操作?
运维·自动化
迁移科技15 小时前
周转箱拆垛码垛自动化实战:3D视觉实现 ±2mm 毫米级稳定作业
3d·自动化·视觉检测
weixin_4038101318 小时前
02-iOS免越狱无线投屏-投屏鼠标操作输入以及主控同步
自动化·新媒体运营·跨境电商·ios投屏·ios脚本·营销获客
HiDev_19 小时前
【非标自动化】2、认识元器件(激光位移传感器)
运维·自动化
HiDev_20 小时前
【非标自动化】2、认识元器件(电动缸)
运维·自动化
喜欢吃豆1 天前
Playwright 深度解析:从浏览器自动化到动态爬虫、自动化测试与 AI Agent
运维·爬虫·自动化
MartinYeung51 天前
[论文学习]Learning to Inject:基于强化学习的自动化提示注入攻击
网络·学习·自动化
肥胖小羊1 天前
企业微信审批流状态变更监听与业务系统自动化对接
运维·自动化·企业微信
HiDev_1 天前
【非标自动化】2、认识元器件(伺服电机)
运维·自动化
2401_843253701 天前
运营自动化AI:7大场景如何用Skill降本增效
运维·自动化