Appium+Python 报错“Requires permission android.permission.WRITE_SECURE_SETTINGS”
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Appium+Python 报错“Requires permission android.permission.WRITE_SECURE_SETTINGS”相关的知识,希望对你有一定的参考价值。
参考技术A 新申请的测试机到啦,申请机型是小米9。打开开发者模式、USB调试后,连接电脑,准备跑一下自动化脚本。但是在pycharm中点击run后,出现报错,报错code:255,提示“Requires permission android.permission.WRITE_SECURE_SETTINGS”,报错详情如下:从上图可知,提示打开android 安全设置
解决方案:打开android安全设置
步骤如下(需先插入SIM卡):
点击小米手机 设置->更多设置->开发者选项->点击“USB调试(安全设置)
打开小米手机USB调试(安全设置)功能后,运行脚本成功安装Appium Settings和Unlock,并启动app
解决报错:在Python中使用property装饰器时,出现错误:TypeError: descriptor ‘setter‘ requires a ‘property‘ object but(代码片
错误信息
•我们在使用property装饰器时,可能因为装饰器名称书写错误导致下述错误:
TypeError: descriptor 'setter' requires a 'property' object but received a 'function'
问题分析
•出现此错误的原因是我们将所有的装饰器名称都写为了property,而不是我们的类中相同的方法名:
问题代码
class AgeDemo(object):
def __init__(self, age):
self.age = age
@property
def age_test(self):
return self.age
@property.setter # 出现问题的代码行
def age_test(self, age):
if not isinstance(age, int):
raise TypeError('TypeError')
self.age = age
解决报错
•将图中出现报错的装饰器名称改为我们类中设置的相同名称
,即可解决此报错!!!
代码如下:
class AgeDemo(object):
def __init__(self, age):
self.age = age
@property
def age_test(self):
return self.age
@age_test.setter # 修改的代码行
def age_test(self, age):
if not isinstance(age, int):
raise TypeError('TypeError')
self.age = age
参考文档
•其它关于python装饰器的问题可参考官方文档:python装饰器官方文档!!!
以上是关于Appium+Python 报错“Requires permission android.permission.WRITE_SECURE_SETTINGS”的主要内容,如果未能解决你的问题,请参考以下文章
Appium+python自动化54-appium-doctor报错已解决(SyntaxError: Unexpected token ...)
已解决Permission denial: writing to settings requires:android.permission.WRITE_SECURE_SETTINGS
appium---from appium import webdriver报错提示“Unresolved import webdriver”
Python 学习记录Pycharm导入第三方包报错问题……ValueError: check_hostname requires server_hostname
安装setuptools模块报错Compression requires the (missing) zlib module