天天看點

Appium-超過60s的應用場景如何處理

前言:

最近在搞appium自動化項目,遇到超過60s的應用場景時,總是報錯報錯。如何解決呢?見下文。

報錯資訊:

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,是以你接下來的所有操作都将失敗。

capabilities = {
                    'automationName': 'UIAutomator2',
                    #可以通過newcommandtimeout将逾時時間改長,這樣就解決了該問題!!
                    #逾時時間可按照實際情況自定義!
                    'newCommandTimeout': "2000",
                    'unicodeKeyboard': True,
                    'resetKeyboard': True,
                    'noSign': True
                    }
    host = "http://localhost:4723/wd/hub"
    driver = webdriver.Remote(host, capabilities)
           

以上。

繼續閱讀