在使用appium過程中遇到了執行一個用例時有多個不同的acitivity的情況,以下為app內部切換acitivity的方法:
如果僅需要切換一次activity,可以通過設置desired_caps['appWaitActivity'] = 'xxxxxx'來實現。
如果需要多次切換activity,則通過webdriver中的wait_activity()方法來實現。
wait_activity():
1 def wait_activity(self, activity, timeout, interval=1): 2 """Wait for an activity: block until target activity presents 3 or time out. 4 5 This is an Android-only method. 6 7 :Agrs: 8 - activity - target activity 9 - timeout - max wait time, in seconds 10 - interval - sleep interval between retries, in seconds 11 """ 12 try: 13 WebDriverWait(self, timeout, interval).until( 14 lambda d: d.current_activity == activity) 15 return True 16 except TimeoutException: 17 return False
