Appium+Python启动Android计算器报错:'NoneType'无to_capabilities属性
解决Appium启动报错:
AttributeError: 'NoneType' object has no attribute 'to_capabilities' 问题根源
这个错误是由于Appium Python客户端2.x+版本与Selenium 4.x的API变更导致的——旧版本中直接传递desired_caps字典给webdriver.Remote的方式已被弃用,新版本要求使用对应的Options类来封装配置参数。
修复代码
替换原有代码为以下内容:
from appium import webdriver from appium.options.android import UiAutomator2Options desired_caps = { "platformName": "Android", "platformVersion": "12", "deviceName": "OP56F5", "automationName": "UIAutomator2", "appPackage": "com.coloros.calculator", "appActivity": "com.android.calculator2.Calculator" } # 将配置字典转换为UiAutomator2Options实例 options = UiAutomator2Options().load_capabilities(desired_caps) # 初始化驱动时传入options参数 driver = webdriver.Remote('http://localhost:4723/wd/hub', options=options)
额外验证步骤
- 检查Appium服务状态:确认终端运行
appium命令后,输出包含Appium REST http interface listener started on 0.0.0.0:4723 - 验证设备连接:运行
adb devices,确保列表中显示你的设备OP56F5 - 确认应用信息准确性:打开设备上的计算器,运行
adb shell dumpsys window | findstr mCurrentFocus,核对输出的包名和Activity名与配置中的appPackage、appActivity一致
内容的提问来源于stack exchange,提问作者Erick Muller Acero
相关产品推荐
相关产品推荐

