您的位置:首页 > 娱乐 > 明星 > 虚拟电脑主机平台_yy传媒_有实力的网站排名优化软件_宁波seo推广联系方法

虚拟电脑主机平台_yy传媒_有实力的网站排名优化软件_宁波seo推广联系方法

2025/1/11 8:29:55 来源:https://blog.csdn.net/zhang_jiamin/article/details/144982313  浏览:    关键词:虚拟电脑主机平台_yy传媒_有实力的网站排名优化软件_宁波seo推广联系方法
虚拟电脑主机平台_yy传媒_有实力的网站排名优化软件_宁波seo推广联系方法

mac上安装的是较新的Appium版本,在跑之前写的Android UI 自动化代码时报错:AttributeError: 'dict' object has no attribute 'to_capabilities'。

查了一下资料,这是因为较新的 Selenium 和 Appium 版本要求使用 Options 类来定义能力,而不是直接使用字典。

【解决方法】
需要将字典形式的 android_opts 转换为 Options 实例。修改方法:
1、引入正确的 Options 类
确保导入了 Appium 提供的 UiAutomator2Options 的 Options 类:

from appium.options.android import UiAutomator2Options

2、转换字典为 Options
在创建驱动的函数中,将 android_opts 转换为 UiAutomator2Options 实例:

def create_android_driver(android_opts=None):# 创建对象options = UiAutomator2Options()if custom_opts is not None:options.load_capabilities(android_opts)return webdriver.Remote(f'http://{APPIUM_HOST}:{APPIUM_PORT}', options=options)

这样不在报错,驱动创建成功。

【总结】

在新的 Appium 客户端库中(appium-python-client),caps 参数由 Options 类来管理,不在直接传递字典。如果使用的是较旧的方式,就可能出现这个错误,AttributeError: 'dict' object has no attribute 'to_capabilities'。 

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com