Package co.verisoft.fw.selenium.drivers
Class VerisoftMobileDriver
java.lang.Object
co.verisoft.fw.selenium.drivers.VerisoftDriver
co.verisoft.fw.selenium.drivers.VerisoftMobileDriver
- All Implemented Interfaces:
io.appium.java_client.battery.HasBattery
,io.appium.java_client.CanRememberExtensionPresence
,io.appium.java_client.ExecutesMethod
,io.appium.java_client.HasAppStrings
,io.appium.java_client.HasDeviceTime
,io.appium.java_client.HasOnScreenKeyboard
,io.appium.java_client.HasSettings
,io.appium.java_client.HidesKeyboard
,io.appium.java_client.InteractsWithApps
,io.appium.java_client.LocksDevice
,io.appium.java_client.PerformsTouchActions
,io.appium.java_client.PullsFiles
,io.appium.java_client.PushesFiles
,io.appium.java_client.remote.SupportsContextSwitching
,io.appium.java_client.remote.SupportsRotation
,io.appium.java_client.screenrecording.CanRecordScreen
,org.openqa.selenium.ContextAware
,org.openqa.selenium.HasCapabilities
,org.openqa.selenium.interactions.Interactive
,org.openqa.selenium.JavascriptExecutor
,org.openqa.selenium.PrintsPage
,org.openqa.selenium.SearchContext
,org.openqa.selenium.TakesScreenshot
,org.openqa.selenium.virtualauthenticator.HasVirtualAuthenticator
,org.openqa.selenium.WebDriver
,org.openqa.selenium.WrapsDriver
public class VerisoftMobileDriver
extends VerisoftDriver
implements io.appium.java_client.remote.SupportsContextSwitching, io.appium.java_client.remote.SupportsRotation, io.appium.java_client.HidesKeyboard, io.appium.java_client.HasDeviceTime, io.appium.java_client.PullsFiles, io.appium.java_client.InteractsWithApps, io.appium.java_client.HasAppStrings, io.appium.java_client.PerformsTouchActions, io.appium.java_client.HasOnScreenKeyboard, io.appium.java_client.LocksDevice, io.appium.java_client.PushesFiles, io.appium.java_client.screenrecording.CanRecordScreen, io.appium.java_client.battery.HasBattery, io.appium.java_client.HasSettings
VeriSoft mobile driver. A driver for mobile application. This driver refers to Android driver and
ios driver only. All other drivers are not supported by VerisoftMobileDriver at present time. The driver
supports both local and remote driver:-
VeriSoft mobile driver is a concrete class which implements all the interfaces AppiumDriver and DefaultGenericMobileDriver.
VeriSoftMobileDriver implements WebDriver behavior, and in addition adds functionality. The main functionality which
is currently supported:
2. Extended logging
3. All available events are registered. See events in the "See Also" section
4. WebDriver is wrapped with EventFiringDecorator. See in the "See Also" section
The driver is instanciated by specifying the relevant DesiredCapabilities, and if the driver is a remote driver,
specifying remote url. All of VeriSoft's ctors expectes at least
a DesiredCapabilities object.
- Since:
- 1.9.6
- Author:
- David Yehezkel, Nir Gallner @ www.VeriSoft.co
-
Nested Class Summary
Nested classes/interfaces inherited from class co.verisoft.fw.selenium.drivers.VerisoftDriver
VerisoftDriver.VerisoftDriverOptions, VerisoftDriver.VerisoftTargetLocator
Nested classes/interfaces inherited from interface org.openqa.selenium.WebDriver
org.openqa.selenium.WebDriver.Navigation, org.openqa.selenium.WebDriver.Options, org.openqa.selenium.WebDriver.TargetLocator, org.openqa.selenium.WebDriver.Timeouts, org.openqa.selenium.WebDriver.Window
-
Field Summary
Fields inherited from class co.verisoft.fw.selenium.drivers.VerisoftDriver
driver
-
Constructor Summary
ConstructorsConstructorDescriptionVerisoftMobileDriver
(URL remoteAddress, org.openqa.selenium.Capabilities capabilities) VerisoftMobileDriver
(URL url, org.openqa.selenium.Capabilities capabilities, Map<String, String> customHeaders) VerisoftMobileDriver
(org.openqa.selenium.Capabilities capabilities) VerisoftMobileDriver
(org.openqa.selenium.remote.HttpCommandExecutor commandExecutor, org.openqa.selenium.Capabilities capabilities) VerisoftMobileDriver
(org.openqa.selenium.WebDriver otherDriver) -
Method Summary
Modifier and TypeMethodDescriptionvoid
activateApp
(String bundleId) void
activateApp
(String bundleId, @Nullable io.appium.java_client.appmanagement.BaseActivateApplicationOptions options) io.appium.java_client.ExecutesMethod
org.openqa.selenium.WebDriver
org.openqa.selenium.remote.Response
org.openqa.selenium.remote.Response
io.appium.java_client.android.AndroidDriver
getAppStringMap
(String language) getAppStringMap
(String language, String stringFile) io.appium.java_client.battery.BatteryInfo
@Nullable String
getDeviceTime
(String format) io.appium.java_client.ios.IOSDriver
org.openqa.selenium.ScreenOrientation
void
void
installApp
(String appPath) void
installApp
(String appPath, @Nullable io.appium.java_client.appmanagement.BaseInstallApplicationOptions options) boolean
isAppInstalled
(String bundleId) boolean
boolean
void
void
lockDevice
(Duration duration) io.appium.java_client.ExecutesMethod
io.appium.java_client.MultiTouchAction
performMultiTouchAction
(io.appium.java_client.MultiTouchAction multiAction) io.appium.java_client.TouchAction
performTouchAction
(io.appium.java_client.TouchAction touchAction) byte[]
byte[]
pullFolder
(String remotePath) void
void
io.appium.java_client.appmanagement.ApplicationState
queryAppState
(String bundleId) boolean
boolean
removeApp
(String bundleId, @Nullable io.appium.java_client.appmanagement.BaseRemoveApplicationOptions options) void
rotate
(org.openqa.selenium.DeviceRotation rotation) void
rotate
(org.openqa.selenium.ScreenOrientation orientation) org.openqa.selenium.DeviceRotation
rotation()
void
runAppInBackground
(Duration duration) <T extends io.appium.java_client.screenrecording.BaseStartScreenRecordingOptions>
StringstartRecordingScreen
(T options) <T extends io.appium.java_client.screenrecording.BaseStopScreenRecordingOptions>
StringstopRecordingScreen
(T options) boolean
terminateApp
(String bundleId) boolean
terminateApp
(String bundleId, @Nullable io.appium.java_client.appmanagement.BaseTerminateApplicationOptions options) void
Methods inherited from class co.verisoft.fw.selenium.drivers.VerisoftDriver
addListener, addVirtualAuthenticator, async, close, executeAsyncScript, executeScript, executeScript, findElement, findElements, get, getCapabilities, getCurrentUrl, getPageSource, getPinnedScripts, getScreenshotAs, getTitle, getWindowHandle, getWindowHandles, getWrappedDriver, manage, navigate, perform, pin, print, quit, removeVirtualAuthenticator, resetInputState, switchTo, unpin
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface io.appium.java_client.HasSettings
getSettings, setSetting, setSetting, setSettings, setSettings
Methods inherited from interface org.openqa.selenium.WebDriver
close, findElement, findElements, get, getCurrentUrl, getPageSource, getTitle, getWindowHandle, getWindowHandles, manage, navigate, quit, switchTo
-
Constructor Details
-
VerisoftMobileDriver
public VerisoftMobileDriver(org.openqa.selenium.Capabilities capabilities) -
VerisoftMobileDriver
-
VerisoftMobileDriver
public VerisoftMobileDriver(org.openqa.selenium.remote.HttpCommandExecutor commandExecutor, org.openqa.selenium.Capabilities capabilities) -
VerisoftMobileDriver
public VerisoftMobileDriver(org.openqa.selenium.WebDriver otherDriver) -
VerisoftMobileDriver
-
-
Method Details
-
getBatteryInfo
public io.appium.java_client.battery.BatteryInfo getBatteryInfo()- Specified by:
getBatteryInfo
in interfaceio.appium.java_client.battery.HasBattery
-
execute
- Specified by:
execute
in interfaceio.appium.java_client.ExecutesMethod
-
execute
- Specified by:
execute
in interfaceio.appium.java_client.ExecutesMethod
-
rotation
public org.openqa.selenium.DeviceRotation rotation()- Specified by:
rotation
in interfaceio.appium.java_client.remote.SupportsRotation
-
rotate
public void rotate(org.openqa.selenium.DeviceRotation rotation) - Specified by:
rotate
in interfaceio.appium.java_client.remote.SupportsRotation
-
rotate
public void rotate(org.openqa.selenium.ScreenOrientation orientation) - Specified by:
rotate
in interfaceio.appium.java_client.remote.SupportsRotation
-
getOrientation
public org.openqa.selenium.ScreenOrientation getOrientation()- Specified by:
getOrientation
in interfaceio.appium.java_client.remote.SupportsRotation
-
startRecordingScreen
public <T extends io.appium.java_client.screenrecording.BaseStartScreenRecordingOptions> String startRecordingScreen(T options) - Specified by:
startRecordingScreen
in interfaceio.appium.java_client.screenrecording.CanRecordScreen
-
startRecordingScreen
- Specified by:
startRecordingScreen
in interfaceio.appium.java_client.screenrecording.CanRecordScreen
-
stopRecordingScreen
public <T extends io.appium.java_client.screenrecording.BaseStopScreenRecordingOptions> String stopRecordingScreen(T options) - Specified by:
stopRecordingScreen
in interfaceio.appium.java_client.screenrecording.CanRecordScreen
-
stopRecordingScreen
- Specified by:
stopRecordingScreen
in interfaceio.appium.java_client.screenrecording.CanRecordScreen
-
getAppStringMap
- Specified by:
getAppStringMap
in interfaceio.appium.java_client.HasAppStrings
-
getAppStringMap
- Specified by:
getAppStringMap
in interfaceio.appium.java_client.HasAppStrings
-
getAppStringMap
- Specified by:
getAppStringMap
in interfaceio.appium.java_client.HasAppStrings
-
getDeviceTime
- Specified by:
getDeviceTime
in interfaceio.appium.java_client.HasDeviceTime
-
getDeviceTime
- Specified by:
getDeviceTime
in interfaceio.appium.java_client.HasDeviceTime
-
isKeyboardShown
public boolean isKeyboardShown()- Specified by:
isKeyboardShown
in interfaceio.appium.java_client.HasOnScreenKeyboard
-
hideKeyboard
public void hideKeyboard()- Specified by:
hideKeyboard
in interfaceio.appium.java_client.HidesKeyboard
-
installApp
- Specified by:
installApp
in interfaceio.appium.java_client.InteractsWithApps
-
installApp
public void installApp(String appPath, @Nullable @Nullable io.appium.java_client.appmanagement.BaseInstallApplicationOptions options) - Specified by:
installApp
in interfaceio.appium.java_client.InteractsWithApps
-
isAppInstalled
- Specified by:
isAppInstalled
in interfaceio.appium.java_client.InteractsWithApps
-
runAppInBackground
- Specified by:
runAppInBackground
in interfaceio.appium.java_client.InteractsWithApps
-
removeApp
- Specified by:
removeApp
in interfaceio.appium.java_client.InteractsWithApps
-
removeApp
public boolean removeApp(String bundleId, @Nullable @Nullable io.appium.java_client.appmanagement.BaseRemoveApplicationOptions options) - Specified by:
removeApp
in interfaceio.appium.java_client.InteractsWithApps
-
activateApp
- Specified by:
activateApp
in interfaceio.appium.java_client.InteractsWithApps
-
activateApp
public void activateApp(String bundleId, @Nullable @Nullable io.appium.java_client.appmanagement.BaseActivateApplicationOptions options) - Specified by:
activateApp
in interfaceio.appium.java_client.InteractsWithApps
-
queryAppState
- Specified by:
queryAppState
in interfaceio.appium.java_client.InteractsWithApps
-
terminateApp
- Specified by:
terminateApp
in interfaceio.appium.java_client.InteractsWithApps
-
terminateApp
public boolean terminateApp(String bundleId, @Nullable @Nullable io.appium.java_client.appmanagement.BaseTerminateApplicationOptions options) - Specified by:
terminateApp
in interfaceio.appium.java_client.InteractsWithApps
-
lockDevice
public void lockDevice()- Specified by:
lockDevice
in interfaceio.appium.java_client.LocksDevice
-
lockDevice
- Specified by:
lockDevice
in interfaceio.appium.java_client.LocksDevice
-
unlockDevice
public void unlockDevice()- Specified by:
unlockDevice
in interfaceio.appium.java_client.LocksDevice
-
isDeviceLocked
public boolean isDeviceLocked()- Specified by:
isDeviceLocked
in interfaceio.appium.java_client.LocksDevice
-
performTouchAction
public io.appium.java_client.TouchAction performTouchAction(io.appium.java_client.TouchAction touchAction) - Specified by:
performTouchAction
in interfaceio.appium.java_client.PerformsTouchActions
-
performMultiTouchAction
public io.appium.java_client.MultiTouchAction performMultiTouchAction(io.appium.java_client.MultiTouchAction multiAction) - Specified by:
performMultiTouchAction
in interfaceio.appium.java_client.PerformsTouchActions
-
pullFile
- Specified by:
pullFile
in interfaceio.appium.java_client.PullsFiles
-
pullFolder
- Specified by:
pullFolder
in interfaceio.appium.java_client.PullsFiles
-
pushFile
- Specified by:
pushFile
in interfaceio.appium.java_client.PushesFiles
-
pushFile
- Specified by:
pushFile
in interfaceio.appium.java_client.PushesFiles
- Throws:
IOException
-
context
- Specified by:
context
in interfaceorg.openqa.selenium.ContextAware
- Specified by:
context
in interfaceio.appium.java_client.remote.SupportsContextSwitching
-
getContextHandles
- Specified by:
getContextHandles
in interfaceorg.openqa.selenium.ContextAware
- Specified by:
getContextHandles
in interfaceio.appium.java_client.remote.SupportsContextSwitching
-
getContext
- Specified by:
getContext
in interfaceorg.openqa.selenium.ContextAware
- Specified by:
getContext
in interfaceio.appium.java_client.remote.SupportsContextSwitching
-
getAndroidDriver
public io.appium.java_client.android.AndroidDriver getAndroidDriver() -
getIOSDriver
public io.appium.java_client.ios.IOSDriver getIOSDriver() -
assertExtensionExists
- Specified by:
assertExtensionExists
in interfaceio.appium.java_client.CanRememberExtensionPresence
-
markExtensionAbsence
- Specified by:
markExtensionAbsence
in interfaceio.appium.java_client.CanRememberExtensionPresence
-