最近在搞appium自動化項目,遇到超過60s的應用場景時,老是報錯報錯。如何解決呢?見下文。
報錯信息:android
2018-05-21 14:03:42:253 - [HTTP] <-- POST /wd/hub/session/6b55742d-aa16-413c-aedd-ba69a89ced41/element/14/click 200 135 ms - 76 2018-05-21 14:03:42:253 - [HTTP] 2018-05-21 14:04:42:252 - [BaseDriver] Shutting down because we waited 60 seconds for a command 2018-05-21 14:04:42:253 - [debug] [AndroidDriver] Shutting down Android driver 2018-05-21 14:04:42:253 - [Appium] Closing session, cause was 'New Command Timeout of 60 seconds expired. Try customizing the timeout using the 'newCommandTimeout' desired capability' 2018-05-21 14:04:42:254 - [Appium] Removing session 6b55742d-aa16-413c-aedd-ba69a89ced41 from our master session list 2018-05-21 14:04:42:254 - [debug] [AndroidDriver] Resetting IME to io.appium.android.ime/.UnicodeIME
Appium在沒有收到下一個命令時,默認超時時間是60s,超時後應用將會自動關閉session,因此你接下來的全部操做都將失敗。web
capabilities = { 'automationName': 'UIAutomator2', #能夠經過newcommandtimeout將超時時間改長,這樣就解決了該問題!! #超時時間可按照實際狀況自定義! 'newCommandTimeout': "2000", 'unicodeKeyboard': True, 'resetKeyboard': True, 'noSign': True } host = "http://localhost:4723/wd/hub" driver = webdriver.Remote(host, capabilities)
以上。session