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()
相关推荐
北京阿尔泰科技1 小时前
冬季安全用电监测案例
安全·自动化
北京耐用通信1 小时前
突破协议壁垒:耐达讯自动化Ethernet/IP转CC-Link网关在工业互联中的核心应用
人工智能·网络协议·安全·自动化·信息与通信
扫描电镜1 小时前
扫描电镜选购指南:智能、稳定与自动化的综合考量
人工智能·自动化·扫描电镜·自动扫描电镜
嫂子的姐夫2 小时前
01-selenium
爬虫·python·selenium·自动化
2501_916008893 小时前
App 上架服务行业的实际工作流程与工具选择 从人工代办到跨平台自动化的转变
android·运维·ios·小程序·uni-app·自动化·iphone
Vanranrr3 小时前
Python vs PowerShell:自动化 C++ 配置文件的两种实现方案
c++·python·自动化
阿蔹3 小时前
Selenium---自动化鼠标控制
java·selenium·自动化
艾莉丝努力练剑3 小时前
【Linux基础开发工具 (五)】详解自动化构建:make / Makefile
linux·运维·服务器·c++·centos·自动化
宇钶宇夕11 小时前
三旺 INP314T 网关快速入门指南:从登录到基础配置
运维·自动化·软件工程
北京耐用通信20 小时前
三步打通数据壁垒:耐达讯自动化Ethernet/IP转CC-Link方案全解析。建议点赞收藏
运维·tcp/ip·自动化