appium常见问题

1、如何处理 android 权限弹窗

# 处理 android 权限弹窗
while True:
    for i in range(6):
        if 允许 in driver.page_source:
            driver.switch_to.alert.accept()
        time.sleep(1)
    break

2、如何处理UI自动化中不定时的弹窗,比如升级提示弹窗、营销弹窗、权限弹窗等

可以在脚本初始化时,启动一个线程来处理

def popup(driver):
    while True: 
        #  权限弹窗
        if 允许 in driver.page_source:
            driver.switch_to.alert.accept()
        # 其他弹窗
        try:
            driver.find_element(By.XPATH, //android.widget.TextView[@text="哈哈"]).click()
            driver.find_element(By.XPATH, //android.widget.TextView[@text="去首页"]).click()
            driver.find_element(By.XPATH, //android.view.View[@text="暂时离开"]).click()
        except:
            pass
        time.sleep(1)
        print(...checking..popup...)

t = Thread(target=popup, args=(driver,))
t.start()

问题: 如何结束子线程(是否可以使用子进程呢)

 

3、如何识别NATIVE_APP中有H5页面

driver.contexts

可以识别当前也是的webview ,比如:[‘NATIVE_APP‘, ‘WEBVIEW_com.android.browser‘, ‘WEBVIEW_com.xx.xx‘]

4、如何设置appium不清除APP数据

# 解决Could not proxy. Proxy error: Could not proxy command to remote server. Original error: Error: socket hang up
desired_caps[‘recreateChromeDriverSessions‘] = ‘True‘
desired_caps[‘noReset‘] = ‘True‘  # 不清除数据

 

appium常见问题

上一篇:win7蓝牙连接手机蓝牙


下一篇:Aerial:将Apple TV 4K/1080p高清屏保带到你的Mac上