1. 程式人生 > 其它 >關於使用iOS的彈窗接口出現“WDARequestError”報錯的問題說明

關於使用iOS的彈窗接口出現“WDARequestError”報錯的問題說明

預告:近期我們也會更新iOS-Tagent,屆時可以直接使用我們最新的iOS-Tagent,同學們可以關注後續我們的更新資訊。

最近我們發現經常有一些同學在使用我們iOS彈窗處理介面時,容易出現一個 WDARequestError 的報錯:

Traceback (most recent call last):
  File "airtest/cli/runner.py", line 70, in runTest
  File "/Users/han/Documents/11.air/11.py", line 14, in <module>
    ios.alert_accept()
  File "/Applications/AirtestIDE.app/Contents/MacOS/airtest/core/ios/ios.py", line 34, in wrapper
    return func(self, *args, **kwargs)
  File "/Applications/AirtestIDE.app/Contents/MacOS/airtest/core/ios/ios.py", line 583, in alert_accept
    return self.driver.alert.accept()
  File "site-packages/wda/__init__.py", line 1144, in accept
  File "site-packages/wda/utils.py", line 47, in _inner
  File "site-packages/wda/__init__.py", line 454, in _fetch
  File "site-packages/wda/__init__.py", line 124, in httpdo
  File "site-packages/wda/__init__.py", line 180, in _unsafe_httpdo
wda.exceptions.WDAUnknownError: WDARequestError(status=110, value={'error': 'unknown error', 'message': '*** -[__NSArrayM insertObject:atIndex:]: object cannot be nil'})

這是因為同學們部署的WebDriverAgent不是最新版本導致的,需要同學們 從appium的github上拉取下最新的WebDriverAgent重新部署到iOS裝置上 ,即可正常使用我們的iOS彈窗處理介面:

最後補充一個小問題,很多同學在處理iOS的彈窗時發現,無論是使用Airtest的截圖操作,還是poco的控制元件操作,都無法處理iOS彈窗,其實對於iOS裝置,是有專門的彈窗處理介面的: