1. 程式人生 > 其它 >appium中彈窗的處理

appium中彈窗的處理

技術標籤:app自動化

一、appium中彈窗的處理

from appium.webdriver.webdriver import WebDriver
class base:
    black_list=[()]
    error_cont=0
    error_max=10
    def __init__(self,driver:WebDriver):
        self.driver=driver
    def find(self,by,locator=None):
        try:
        #承接元組,或者非元組
            ele=self.
driver.find_element(*by) if isinstance(by,tuple) else self.driver.find_element(by,locator) self.error_cont=0 return ele except Exception as e: #如果沒找到會陷入死迴圈,這裡判斷10次 self.error_cont+=1 if self.error_cont>self.error_max: raise
e #取出彈窗的元素,進行點選 for black in self.black_list: elements=self.driver.find_elements(*black) if len(elements)>0: elements[0].click() return self.find(by,locator) raise e

二、這裡要注意desired capablities中有一個設定引數,也是可以處理彈框的,但是要注意,它只能處理安裝軟體後的授權彈窗

在這裡插入圖片描述
讓Appium自動確定您的應用所需的許可權,並在安裝時將其授予應用,如果noReset為true,則此功能不起作用。