refactor: Move driver-specific commands to use extensions (part1)#856
refactor: Move driver-specific commands to use extensions (part1)#856mykola-mokhnach merged 8 commits intoappium:masterfrom
Conversation
|
I haven't reviewed fully yet, but maybe after merging all parts, probably we should bump the major version (at least minor version) as fallback with try/except. Cloud users for example will have additional command delay forcefully, it would increase users' execution time. it might be not patch version change as users. |
|
I've also added several helpers to remember the absence of mobile methods, so the command might be slower just during the very first call. All the further calls should be fast as they don't send unnecessary server requests |
| :param ext_name: extension name | ||
| :return: self instance for chaining | ||
| """ | ||
| self._absent_extensions.add(ext_name) |
There was a problem hiding this comment.
Can we leave a log here? Perhaps... debug or info?
The main usage is for us. When we get reports by users even if they use the latest driver versions, we maybe should add new extension commands for drivers. Such logs will help to find them.
|
Hi, Is the following error in v2.10.0 related to this change? E selenium.common.exceptions.WebDriverException: Message: Unknown mobile command "pressKey". Only shell,execEmuConsoleCommand,dragGesture,flingGesture,doubleClickGesture,clickGesture,longClickGesture,pinchCloseGesture,pinchOpenGesture,swipeGesture,scrollGesture,scrollBackTo,scroll,viewportScreenshot,viewportRect,deepLink,startLogsBroadcast,stopLogsBroadcast,acceptAlert,dismissAlert,batteryInfo,deviceInfo,getDeviceTime,changePermissions,getPermissions,performEditorAction,startScreenStreaming,stopScreenStreaming,getNotifications,listSms,type,sensorSet,pushFile,pullFile,pullFolder,deleteFile,isAppInstalled,queryAppState,activateApp,removeApp,terminateApp,installApp,clearApp,startActivity,startService,stopService,broadcast,getContexts,installMultipleApks,unlock,refreshGpsCache,startMediaProjectionRecording,isMediaProjectionRecordingRunning,stopMediaProjectionRecording commands are supported. I am using "press_keycode" and it is erroring on 2.10.0... |
No description provided.