我是Python新手并尝试使用 Android 7.1.1模拟器上的Appium 1.3.1和Python 3.6 对应用程序进行自动化测试。 此时我陷入了系统权限弹出,并且不知道如何用Python选择“ALLOW”元素(与在应用程序中选择常规按钮不同)。 在授予对文件的访问权限之前,应用程序才会启动,但我不确定在代码中设置它的确切位置以及如何在Python中编写它。 有人有某种示例代码或某些想法如何做到这一点? 这是我到目前为止所做的:
import os
import unittest
from appium import webdriver
from time import sleep
class meTest(unittest.TestCase):
def setUp(self):
desired_caps = {}
desired_caps['platformName'] = 'Android'
desired_caps['platformVersion'] = '7.1.1'
desired_caps['deviceName'] = 'Android Emulator'
# Returns abs path relative to this file and not cwd
desired_caps['app'] = ‘example.apk'
self.driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)
def test_OpenDocuments(self):
sleep(10)
documentSearchButton = self.driver.find_element_by_id(
‘example.example').click()
def tearDown(self):
self.driver.quit()
if __name__ == '__main__':
suite = unittest.TestLoader().loadTestsFromTestCase(meTest)
unittest.TextTestRunner(verbosity=2).run(suite)
感谢。
答案 0 :(得分:2)
要授予权限(在我的情况下为Android权限对话框中的“允许”按钮),必须访问Appium webdriver中的desired_caps。它会自动授予此应用的所有权限。
desired_caps['autoGrantPermissions'] = 'true'
答案 1 :(得分:-1)
据我所知,您通常可以使用os.chown()设置权限。在您的情况下(Python 3.6),以下可能有效:
os.chmod("path/to/your/file", 0o666)
当然,您需要修改访问权限以满足您的要求,' 0o666'只是一个回报的例子:
-rw-rw-rw- 1 ag ag 0 Mar 25 05:55 your_file