Skip to content

Class: FakeDriver

@appium/fake-driver.FakeDriver

Implements

Hierarchy

FakeDriver

Table of contents

Constructors

Properties

Accessors

Methods

Constructors

constructor

new FakeDriver(opts?, shouldValidateCaps?)

Parameters

Name Type Default value
opts Object {}
shouldValidateCaps boolean true

Overrides

BaseDriver.constructor

Defined in

packages/fake-driver/lib/driver.js:33

Properties

_eventHistory

_eventHistory: EventHistory

Inherited from

BaseDriver._eventHistory

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:67


_log

_log: AppiumLogger

Inherited from

BaseDriver._log

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:73


_proxyActive

_proxyActive: boolean

Defined in

packages/fake-driver/lib/driver.js:40


allowInsecure

allowInsecure: string[]

Inherited from

BaseDriver.allowInsecure

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:53


appModel

appModel: FakeApp

Defined in

packages/fake-driver/lib/driver.js:31


assertAlert

assertAlert: () => void = alert.assertAlert

Type declaration

▸ (): void

Returns

void

Defined in

packages/fake-driver/lib/driver.js:209


assertNoAlert

assertNoAlert: () => void = alert.assertNoAlert

Type declaration

▸ (): void


ALERT *


Returns

void

Defined in

packages/fake-driver/lib/driver.js:208


assertWebviewContext

assertWebviewContext: () => void = contexts.assertWebviewContext

Type declaration

▸ (): void

Returns

void

Defined in

packages/fake-driver/lib/driver.js:219


basePath

basePath: string

basePath is used for several purposes, for example in setting up proxying to other drivers, since we need to know what the base path of any incoming request might look like. We set it to the default initially but it is automatically updated during any actual program execution by the routeConfiguringFunction, which is necessarily run as the entrypoint for any Appium server

Inherited from

BaseDriver.basePath

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:50


caps

caps: Partial<ConstraintsToCaps<any> & void>

Inherited from

BaseDriver.caps

Defined in

packages/fake-driver/lib/driver.js:96


clear

clear: (elementId: any) => Promise<void> = element.clear

Type declaration

▸ (elementId): Promise<void>

Parameters
Name Type
elementId any
Returns

Promise<void>

Defined in

packages/fake-driver/lib/driver.js:236


cliArgs

cliArgs: StringRecord & ServerArgs

Inherited from

BaseDriver.cliArgs

Defined in

packages/base-driver/build/lib/basedriver/driver.d.ts:17


click

click: (elementId: string) => Promise<void> = element.click

Type declaration

▸ (elementId): Promise<void>

This comment should be displayed instead of the one from ExternalDriver

Parameters
Name Type
elementId string
Returns

Promise<void>

Defined in

packages/fake-driver/lib/driver.js:237


commandsQueueGuard

Protected commandsQueueGuard: AsyncLock

Inherited from

BaseDriver.commandsQueueGuard

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:85


curContext

curContext: string

Defined in

packages/fake-driver/lib/driver.js:29


denyInsecure

denyInsecure: string[]

Inherited from

BaseDriver.denyInsecure

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:55


desiredCapConstraints

desiredCapConstraints: Object = FAKE_DRIVER_CONSTRAINTS

Type declaration

Name Type
app { isString: true = true; presence: true = true }
app.isString true
app.presence true
uniqueApp { isBoolean: true = true }
uniqueApp.isBoolean true

Overrides

BaseDriver.desiredCapConstraints

Defined in

packages/fake-driver/lib/driver.js:26


doubleClick

doubleClick: () => Promise<void> = general.doubleClick

Type declaration

▸ (): Promise<void>

Returns

Promise<void>

Defined in

packages/fake-driver/lib/driver.js:273


elMap

elMap: Object

Defined in

packages/fake-driver/lib/driver.js:36


elementDisplayed

elementDisplayed: (elementId: any) => Promise<any> = element.elementDisplayed

Type declaration

▸ (elementId): Promise<any>

Parameters
Name Type
elementId any
Returns

Promise<any>

Defined in

packages/fake-driver/lib/driver.js:231


elementEnabled

elementEnabled: (elementId: any) => Promise<any> = element.elementEnabled

Type declaration

▸ (elementId): Promise<any>

Parameters
Name Type
elementId any
Returns

Promise<any>

Defined in

packages/fake-driver/lib/driver.js:232


elementSelected

elementSelected: (elementId: any) => Promise<any> = element.elementSelected

Type declaration

▸ (elementId): Promise<any>

Parameters
Name Type
elementId any
Returns

Promise<any>

Defined in

packages/fake-driver/lib/driver.js:233


equalsElement

equalsElement: (el1Id: any, el2Id: any) => any = element.equalsElement

Type declaration

▸ (el1Id, el2Id): any

Parameters
Name Type
el1Id any
el2Id any
Returns

any

Defined in

packages/fake-driver/lib/driver.js:241


eventEmitter

eventEmitter: EventEmitter

Inherited from

BaseDriver.eventEmitter

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:69


execute

execute: (script: any, args: any) => Promise<any> = general.execute

Type declaration

▸ (script, args): Promise<any>

Parameters
Name Type
script any
args any
Returns

Promise<any>

Defined in

packages/fake-driver/lib/driver.js:274


fakeAddition

fakeAddition: (num1: number, num2: number, num3?: number) => Promise<number> = general.fakeAddition

Type declaration

▸ (num1, num2, num3?): Promise<number>

Add two or maybe even three numbers

Parameters
Name Type Default value
num1 number undefined
num2 number undefined
num3? number 0
Returns

Promise<number>

Defined in

packages/fake-driver/lib/driver.js:275


fakeThing

fakeThing: any

Defined in

packages/fake-driver/lib/driver.js:39

packages/fake-driver/lib/driver.js:120


findElOrEls

findElOrEls: (strategy: string, selector: string, mult: Mult, context?: Ctx) => Promise<Mult extends true ? Element[] : Element> = find.findElOrEls

Type declaration

▸ <Mult, Ctx>(strategy, selector, mult, context?): Promise<Mult extends true ? Element[] : Element>

Type parameters
Name Type
Mult extends boolean
Ctx any
Parameters
Name Type
strategy string
selector string
mult Mult
context? Ctx
Returns

Promise<Mult extends true ? Element[] : Element>

Overrides

BaseDriver.findElOrEls

Defined in

packages/fake-driver/lib/driver.js:251


findElement

findElement: (strategy: string, selector: string) => Promise<Element> = find.findElement

Type declaration

▸ (strategy, selector): Promise<Element>

This should override whatever's in ExternalDriver

Parameters
Name Type Description
strategy string Strategy
selector string Selector
Returns

Promise<Element>

Overrides

BaseDriver.findElement

Defined in

packages/fake-driver/lib/driver.js:252


findElementFromElement

findElementFromElement: (strategy: any, selector: any, elementId: any) => Promise<Element> = find.findElementFromElement

Type declaration

▸ (strategy, selector, elementId): Promise<Element>

Parameters
Name Type
strategy any
selector any
elementId any
Returns

Promise<Element>

Overrides

BaseDriver.findElementFromElement

Defined in

packages/fake-driver/lib/driver.js:254


findElements

findElements: (strategy: any, selector: any) => Promise<Element[]> = find.findElements

Type declaration

▸ (strategy, selector): Promise<Element[]>

Parameters
Name Type
strategy any
selector any
Returns

Promise<Element[]>

Overrides

BaseDriver.findElements

Defined in

packages/fake-driver/lib/driver.js:253


findElementsFromElement

findElementsFromElement: (strategy: any, selector: any, elementId: any) => Promise<Element[]> = find.findElementsFromElement

Type declaration

▸ (strategy, selector, elementId): Promise<Element[]>

Parameters
Name Type
strategy any
selector any
elementId any
Returns

Promise<Element[]>

Overrides

BaseDriver.findElementsFromElement

Defined in

packages/fake-driver/lib/driver.js:255


focusedElId

focusedElId: any

Defined in

packages/fake-driver/lib/driver.js:37


getAlertText

getAlertText: () => Promise<string> = alert.getAlertText

Type declaration

▸ (): Promise<string>

Get the text of an alert

Returns

Promise<string>

Defined in

packages/fake-driver/lib/driver.js:210


getAttribute

getAttribute: (attr: any, elementId: any) => Promise<any> = element.getAttribute

Type declaration

▸ (attr, elementId): Promise<any>

Parameters
Name Type
attr any
elementId any
Returns

Promise<any>

Defined in

packages/fake-driver/lib/driver.js:238


getContexts

getContexts: () => Promise<string[]> = contexts.getContexts

Type declaration

▸ (): Promise<string[]>

Get the list of available contexts

Returns

Promise<string[]>

Defined in

packages/fake-driver/lib/driver.js:221


getCssProperty

getCssProperty: (prop: any, elementId: any) => Promise<any> = element.getCssProperty

Type declaration

▸ (prop, elementId): Promise<any>

Parameters
Name Type
prop any
elementId any
Returns

Promise<any>

Defined in

packages/fake-driver/lib/driver.js:242


getCurrentContext

getCurrentContext: () => Promise<string> = contexts.getCurrentContext

Type declaration

▸ (): Promise<string>

Returns

Promise<string>

Defined in

packages/fake-driver/lib/driver.js:220


getElement

getElement: (elId: any) => any = element.getElement

Type declaration

▸ (elId): any

Parameters
Name Type
elId any
Returns

any

Defined in

packages/fake-driver/lib/driver.js:229


getElementRect

getElementRect: (elementId: any) => any = element.getElementRect

Type declaration

▸ (elementId): any

Parameters
Name Type
elementId any
Returns

any

Defined in

packages/fake-driver/lib/driver.js:239


getElements

getElements: (elIds: any) => any = element.getElements

Type declaration

▸ (elIds): any


ELEMENTS *


Parameters
Name Type
elIds any
Returns

any

Defined in

packages/fake-driver/lib/driver.js:228


getExistingElementForNode

getExistingElementForNode: (node: any) => null | string = find.getExistingElementForNode

Type declaration

▸ (node): null | string


FIND *


Parameters
Name Type
node any
Returns

null | string

Defined in

packages/fake-driver/lib/driver.js:249


getGeoLocation

getGeoLocation: () => Promise<Location> = general.getGeoLocation

Type declaration

▸ (): Promise<Location>

Returns

Promise<Location>

Defined in

packages/fake-driver/lib/driver.js:263


getLocation

getLocation: (elementId: string) => Promise<any> = element.getLocation

Type declaration

▸ (elementId): Promise<any>

Parameters
Name Type
elementId string
Returns

Promise<any>

Defined in

packages/fake-driver/lib/driver.js:243


getLocationInView

getLocationInView: (elementId: any) => Promise<any> = element.getLocationInView

Type declaration

▸ (elementId): Promise<any>

Parameters
Name Type
elementId any
Returns

Promise<any>

Defined in

packages/fake-driver/lib/driver.js:244


getLog

getLog: (type: any) => Promise<any[]> = general.getLog

Type declaration

▸ (type): Promise<any[]>

Parameters
Name Type
type any
Returns

Promise<any[]>

Overrides

BaseDriver.getLog

Defined in

packages/fake-driver/lib/driver.js:271


getName

getName: (elementId: any) => Promise<any> = element.getName

Type declaration

▸ (elementId): Promise<any>

Parameters
Name Type
elementId any
Returns

Promise<any>

Defined in

packages/fake-driver/lib/driver.js:230


getOrientation

getOrientation: () => Promise<string> = general.getOrientation

Type declaration

▸ (): Promise<string>

Returns

Promise<string>

Defined in

packages/fake-driver/lib/driver.js:265


getPageSource

getPageSource: () => Promise<string> = general.getPageSource

Type declaration

▸ (): Promise<string>

Returns

Promise<string>

Overrides

BaseDriver.getPageSource

Defined in

packages/fake-driver/lib/driver.js:264


getRawContexts

getRawContexts: () => { NATIVE_APP: null = null; PROXY: null = null } = contexts.getRawContexts

Type declaration

▸ (): Object


CONTEXTS *


Returns

Object

Name Type
NATIVE_APP null
PROXY null

Defined in

packages/fake-driver/lib/driver.js:218


getScreenshot

getScreenshot: () => Promise<string> = general.getScreenshot

Type declaration

▸ (): Promise<string>

Returns

Promise<string>

Defined in

packages/fake-driver/lib/driver.js:267


getSize

getSize: (elementId: any) => any = element.getSize

Type declaration

▸ (elementId): any

Parameters
Name Type
elementId any
Returns

any

Defined in

packages/fake-driver/lib/driver.js:240


getText

getText: (elementId: any) => Promise<any> = element.getText

Type declaration

▸ (elementId): Promise<any>

Parameters
Name Type
elementId any
Returns

Promise<any>

Defined in

packages/fake-driver/lib/driver.js:235


getWindowRect

getWindowRect: () => Promise<{ height: number ; width: number ; x: number = 0; y: number = 0 }> = general.getWindowRect

Type declaration

▸ (): Promise<{ height: number ; width: number ; x: number = 0; y: number = 0 }>

Returns

Promise<{ height: number ; width: number ; x: number = 0; y: number = 0 }>

Defined in

packages/fake-driver/lib/driver.js:269


getWindowSize

getWindowSize: () => Promise<{ height: number ; width: number }> = general.getWindowSize

Type declaration

▸ (): Promise<{ height: number ; width: number }>

Returns

Promise<{ height: number ; width: number }>

Defined in

packages/fake-driver/lib/driver.js:268


helpers

helpers: DriverHelpers<any>

Inherited from

BaseDriver.helpers

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:41


implicitWaitMs

implicitWaitMs: number

Inherited from

BaseDriver.implicitWaitMs

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:57


initialOpts

initialOpts: ServerArgs

Inherited from

BaseDriver.initialOpts

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:40


keys

keys: (value: any) => Promise<void> = general.keys

Type declaration

▸ (value): Promise<void>

Parameters
Name Type
value any
Returns

Promise<void>

Defined in

packages/fake-driver/lib/driver.js:261


locatorStrategies

locatorStrategies: string[]

Inherited from

BaseDriver.locatorStrategies

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:59


managedDrivers

managedDrivers: Driver<typeof BASE_DESIRED_CAP_CONSTRAINTS, StringRecord, any>[]

Inherited from

BaseDriver.managedDrivers

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:63


maxElId

maxElId: number

Defined in

packages/fake-driver/lib/driver.js:38


mobileShake

mobileShake: () => Promise<void> = general.mobileShake

Type declaration

▸ (): Promise<void>

Returns

Promise<void>

Defined in

packages/fake-driver/lib/driver.js:272


newCommandTimeoutMs

newCommandTimeoutMs: number

Inherited from

BaseDriver.newCommandTimeoutMs

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:56


noCommandTimer

noCommandTimer: null | Timeout

Inherited from

BaseDriver.noCommandTimer

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:65


opts

opts: ServerArgs & ExtraDriverOpts & Partial<ConstraintsToCaps<any>> & Partial<ConstraintsToCaps<typeof BASE_DESIRED_CAP_CONSTRAINTS>>

Inherited from

BaseDriver.opts

Defined in

packages/base-driver/build/lib/basedriver/driver.d.ts:33


originalCaps

originalCaps: W3CCapabilities<any, void>

Inherited from

BaseDriver.originalCaps

Defined in

packages/base-driver/build/lib/basedriver/driver.d.ts:25


performActions

performActions: (actions: any) => Promise<void> = general.performActions

Type declaration

▸ (actions): Promise<void>

Parameters
Name Type
actions any
Returns

Promise<void>

Defined in

packages/fake-driver/lib/driver.js:270


postAcceptAlert

postAcceptAlert: () => Promise<void> = alert.postAcceptAlert

Type declaration

▸ (): Promise<void>

Accept an alert

Returns

Promise<void>

Defined in

packages/fake-driver/lib/driver.js:212


postDismissAlert

postDismissAlert: () => Promise<void> = alert.postDismissAlert

Type declaration

▸ (): Promise<void>

Dismiss an alert

Returns

Promise<void>

Defined in

packages/fake-driver/lib/driver.js:213


protocol

protocol: undefined | string

Inherited from

BaseDriver.protocol

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:153


relaxedSecurityEnabled

relaxedSecurityEnabled: boolean

Inherited from

BaseDriver.relaxedSecurityEnabled

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:51


releaseActions

releaseActions: () => Promise<void> = general.releaseActions

Type declaration

▸ (): Promise<void>

Returns

Promise<void>

Defined in

packages/fake-driver/lib/driver.js:276


resetOnUnexpectedShutdown

resetOnUnexpectedShutdown: undefined | () => void

Inherited from

BaseDriver.resetOnUnexpectedShutdown

Defined in

packages/base-driver/build/lib/basedriver/driver.d.ts:69


server

server: undefined | AppiumServer

Inherited from

BaseDriver.server

Defined in

packages/base-driver/build/lib/basedriver/driver.d.ts:64


serverHost

serverHost: undefined | string

Inherited from

BaseDriver.serverHost

Defined in

packages/base-driver/build/lib/basedriver/driver.d.ts:65


serverPath

serverPath: undefined | string

Inherited from

BaseDriver.serverPath

Defined in

packages/base-driver/build/lib/basedriver/driver.d.ts:67


serverPort

serverPort: undefined | number

Inherited from

BaseDriver.serverPort

Defined in

packages/base-driver/build/lib/basedriver/driver.d.ts:66


sessionId

sessionId: null | string

Inherited from

BaseDriver.sessionId

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:32


setAlertText

setAlertText: (text: string) => Promise<void> = alert.setAlertText

Type declaration

▸ (text): Promise<void>

Set the text of an alert

Parameters
Name Type
text string
Returns

Promise<void>

Defined in

packages/fake-driver/lib/driver.js:211


setContext

setContext: (context: string) => Promise<void> = contexts.setContext

Type declaration

▸ (context): Promise<void>

Set the current context

Parameters
Name Type Description
context string name of the context
Returns

Promise<void>

Defined in

packages/fake-driver/lib/driver.js:222


setFrame

setFrame: (frameId: number) => Promise<void> = contexts.setFrame

Type declaration

▸ (frameId): Promise<void>

Set the active frame

Parameters
Name Type
frameId number
Returns

Promise<void>

Defined in

packages/fake-driver/lib/driver.js:223


setGeoLocation

setGeoLocation: (location: any) => Promise<void> = general.setGeoLocation

Type declaration

▸ (location): Promise<void>

Parameters
Name Type
location any
Returns

Promise<void>

Defined in

packages/fake-driver/lib/driver.js:262


setOrientation

setOrientation: (o: any) => Promise<void> = general.setOrientation

Type declaration

▸ (o): Promise<void>

Parameters
Name Type
o any
Returns

Promise<void>

Defined in

packages/fake-driver/lib/driver.js:266


setValue

setValue: (keys: any, elementId: any) => Promise<void> = element.setValue

Type declaration

▸ (keys, elementId): Promise<void>

Parameters
Name Type
keys any
elementId any
Returns

Promise<void>

Defined in

packages/fake-driver/lib/driver.js:234


settings

settings: DeviceSettings<any>

settings should be instantiated by drivers which extend BaseDriver, but we set it to an empty DeviceSettings instance here to make sure that the default settings are applied even if an extending driver doesn't utilize the settings functionality itself

Inherited from

BaseDriver.settings

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:92


shook

shook: boolean

Defined in

packages/fake-driver/lib/driver.js:41


shouldValidateCaps

shouldValidateCaps: boolean

Inherited from

BaseDriver.shouldValidateCaps

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:81


shutdownUnexpectedly

Protected shutdownUnexpectedly: boolean

Inherited from

BaseDriver.shutdownUnexpectedly

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:77


supportedLogTypes

supportedLogTypes: Readonly<LogDefRecord<any>>

Definition of the available log types

Inherited from

BaseDriver.supportedLogTypes

Defined in

packages/types/build/lib/driver.d.ts:261


title

title: () => Promise<any> = general.title

Type declaration

▸ (): Promise<any>


GENERAL *


Returns

Promise<any>

Defined in

packages/fake-driver/lib/driver.js:260


updateSettings

updateSettings: (settings: StringRecord) => Promise<void>

Type declaration

▸ (settings): Promise<void>

Update the session's settings dictionary with a new settings object

Parameters
Name Type Description
settings StringRecord A key-value map of setting names to values. Settings not named in the map will not have their value adjusted.
Returns

Promise<void>

Inherited from

BaseDriver.updateSettings

Defined in

packages/types/build/lib/driver.d.ts:303


webLocatorStrategies

webLocatorStrategies: string[]

Inherited from

BaseDriver.webLocatorStrategies

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:61


wrapNewEl

wrapNewEl: (obj: any) => { ELEMENT: string = existingElId } = find.wrapNewEl

Type declaration

▸ (obj): Object

Parameters
Name Type
obj any
Returns

Object

Name Type
ELEMENT string

Defined in

packages/fake-driver/lib/driver.js:250


baseVersion

Static baseVersion: string

Inherited from

BaseDriver.baseVersion

Defined in

packages/types/build/lib/driver.d.ts:1831


executeMethodMap

Static executeMethodMap: Object

Type declaration

Name Type Description
fake: addition { command: "fakeAddition" = 'fakeAddition'; params: { optional: readonly ["num3"] ; required: readonly ["num1", "num2"] } } -
fake: addition.command "fakeAddition" -
fake: addition.params { optional: readonly ["num3"] ; required: readonly ["num1", "num2"] } -
fake: addition.params.optional readonly ["num3"] -
fake: addition.params.required readonly ["num1", "num2"] -
fake: getDeprecatedCommandsCalled { command: "getDeprecatedCommandsCalled" = 'getDeprecatedCommandsCalled' } -
fake: getDeprecatedCommandsCalled.command "getDeprecatedCommandsCalled" -
fake: getThing { command: "getFakeThing" = 'getFakeThing' } Gets a thing (a fake thing)
fake: getThing.command "getFakeThing" -
fake: setThing { command: "setFakeThing" = 'setFakeThing'; params: { required: readonly ["thing"] } } -
fake: setThing.command "setFakeThing" -
fake: setThing.params { required: readonly ["thing"] } -
fake: setThing.params.required readonly ["thing"] -

Overrides

BaseDriver.executeMethodMap

Defined in

packages/fake-driver/lib/driver.js:173


newMethodMap

Static newMethodMap: Object

Type declaration

Name Type
/session/:sessionId/deprecated { POST: { command: "callDeprecatedCommand" = 'callDeprecatedCommand'; deprecated: true = true } }
/session/:sessionId/deprecated.POST { command: "callDeprecatedCommand" = 'callDeprecatedCommand'; deprecated: true = true }
/session/:sessionId/deprecated.POST.command "callDeprecatedCommand"
/session/:sessionId/deprecated.POST.deprecated true
/session/:sessionId/doubleclick { POST: { command: "doubleClick" = 'doubleClick' } }
/session/:sessionId/doubleclick.POST { command: "doubleClick" = 'doubleClick' }
/session/:sessionId/doubleclick.POST.command "doubleClick"
/session/:sessionId/fakedriver { GET: { command: "getFakeThing" = 'getFakeThing' } ; POST: { command: "setFakeThing" = 'setFakeThing'; payloadParams: { required: readonly ["thing"] } } }
/session/:sessionId/fakedriver.GET { command: "getFakeThing" = 'getFakeThing' }
/session/:sessionId/fakedriver.GET.command "getFakeThing"
/session/:sessionId/fakedriver.POST { command: "setFakeThing" = 'setFakeThing'; payloadParams: { required: readonly ["thing"] } }
/session/:sessionId/fakedriver.POST.command "setFakeThing"
/session/:sessionId/fakedriver.POST.payloadParams { required: readonly ["thing"] }
/session/:sessionId/fakedriver.POST.payloadParams.required readonly ["thing"]
/session/:sessionId/fakedriverargs { GET: { command: "getFakeDriverArgs" = 'getFakeDriverArgs' } }
/session/:sessionId/fakedriverargs.GET { command: "getFakeDriverArgs" = 'getFakeDriverArgs' }
/session/:sessionId/fakedriverargs.GET.command "getFakeDriverArgs"

Overrides

BaseDriver.newMethodMap

Defined in

packages/fake-driver/lib/driver.js:153

Accessors

_desiredCapConstraints

Protected get _desiredCapConstraints(): Readonly<typeof BASE_DESIRED_CAP_CONSTRAINTS & C>

Contains the base constraints plus whatever the subclass wants to add.

Subclasses shouldn't need to use this. If you need to use this, please create an issue:

See

https://github.com/appium/appium/issues/new

Returns

Readonly<typeof BASE_DESIRED_CAP_CONSTRAINTS & C>

Inherited from

BaseDriver._desiredCapConstraints

Defined in

packages/base-driver/build/lib/basedriver/driver.d.ts:43


driverData

get driverData(): Object

This property is used by AppiumDriver to store the data of the specific driver sessions. This data can be later used to adjust properties for driver instances running in parallel. Override it in inherited driver classes if necessary.

Returns

Object

Driver properties mapping

Name Type
isUnique boolean

Overrides

BaseDriver.driverData

Defined in

packages/fake-driver/lib/driver.js:101


eventHistory

get eventHistory(): EventHistory

Returns

EventHistory

Inherited from

BaseDriver.eventHistory

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:125


isCommandsQueueEnabled

get isCommandsQueueEnabled(): boolean

This property controls the way the executeCommand method handles new driver commands received from the client. Override it for inherited classes only in special cases.

Returns

boolean

If the returned value is true (default) then all the commands received by the particular driver instance are going to be put into the queue, so each following command will not be executed until the previous command execution is completed. False value disables that queue, so each driver command is executed independently and does not wait for anything.

Inherited from

BaseDriver.isCommandsQueueEnabled

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:124


log

get log(): AppiumLogger

Returns

AppiumLogger

Inherited from

BaseDriver.log

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:93

Methods

addManagedDriver

addManagedDriver(driver): void

Parameters

Name Type
driver Driver<typeof BASE_DESIRED_CAP_CONSTRAINTS, StringRecord, any>

Returns

void

Inherited from

BaseDriver.addManagedDriver

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:220


assertFeatureEnabled

assertFeatureEnabled(name): void

Assert that a given feature is enabled and throw a helpful error if it's not

Parameters

Name Type Description
name string name of feature/command

Returns

void

Inherited from

BaseDriver.assertFeatureEnabled

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:177


assignServer

assignServer(server, host, port, path): void

Parameters

Name Type
server AppiumServer
host string
port number
path string

Returns

void

Inherited from

BaseDriver.assignServer

Defined in

packages/base-driver/build/lib/basedriver/driver.d.ts:63


callDeprecatedCommand

callDeprecatedCommand(): Promise<void>

This is a command that exists just to be an example of a deprecated command

Returns

Promise<void>

Defined in

packages/fake-driver/lib/driver.js:149


canProxy

canProxy(): boolean

Returns

boolean

Overrides

BaseDriver.canProxy

Defined in

packages/fake-driver/lib/driver.js:48


clearNewCommandTimeout

clearNewCommandTimeout(): Promise<void>

Returns

Promise<void>

Inherited from

BaseDriver.clearNewCommandTimeout

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:222


createSession

createSession(w3cCapabilities1, w3cCapabilities2?, w3cCapabilities3?, driverData?): Promise<[string, Partial<ConstraintsToCaps<typeof BASE_DESIRED_CAP_CONSTRAINTS & { app: { isString: true = true; presence: true = true } ; uniqueApp: { isBoolean: true = true } }> & void>]>

Comment for createSession in FakeDriver

Parameters

Name Type Default value Description
w3cCapabilities1 W3CFakeDriverCaps undefined W3C Capabilities
w3cCapabilities2? W3CFakeDriverCaps undefined W3C Capabilities
w3cCapabilities3? W3CFakeDriverCaps undefined W3C Capabilities
driverData? DriverData[] [] Other session data

Returns

Promise<[string, Partial<ConstraintsToCaps<typeof BASE_DESIRED_CAP_CONSTRAINTS & { app: { isString: true = true; presence: true = true } ; uniqueApp: { isBoolean: true = true } }> & void>]>

Session ID and normalized capabilities

Overrides

BaseDriver.createSession

Defined in

packages/fake-driver/lib/driver.js:78


deleteSession

deleteSession(sessionId?, driverData?): Promise<void>

Parameters

Name Type
sessionId? string
driverData? DriverData[]

Returns

Promise<void>

Inherited from

BaseDriver.deleteSession

Defined in

packages/base-driver/build/lib/basedriver/driver.d.ts:89


driverForSession

driverForSession(sessionId): null | Core<any>

method required by MJSONWP in order to determine if the command should be proxied directly to the driver

Parameters

Name Type
sessionId string

Returns

null | Core<any>

Inherited from

BaseDriver.driverForSession

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:149


ensureFeatureEnabled

ensureFeatureEnabled(name): void

Assert that a given feature is enabled and throw a helpful error if it's not

Deprecated

Parameters

Name Type Description
name string name of feature/command

Returns

void

Inherited from

BaseDriver.ensureFeatureEnabled

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:170


executeCommand

executeCommand(cmd, ...args): Promise<any>

Parameters

Name Type
cmd string
...args any[]

Returns

Promise<any>

Inherited from

BaseDriver.executeCommand

Defined in

packages/base-driver/build/lib/basedriver/driver.d.ts:49


executeMethod

executeMethod(script, args): Promise<any>

Call an Execute Method by its name with the given arguments. This method will check that the driver has registered the method matching the name, and send it the arguments.

Parameters

Name Type Description
script string the name of the Execute Method
args [] | [StringRecord] a singleton array containing an arguments object

Returns

Promise<any>

The result of calling the Execute Method

Inherited from

BaseDriver.executeMethod

Defined in

packages/types/build/lib/driver.d.ts:149


findElOrElsWithProcessing

findElOrElsWithProcessing<Mult>(strategy, selector, mult, context?): Promise<Mult extends true ? Element[] : Element>

This is a wrapper for IFindCommands.findElOrEls that validates locator strategies and implements the appium:printPageSourceOnFindFailure capability

Type parameters

Name Type
Mult extends boolean

Parameters

Name Type Description
strategy string the locator strategy
selector string the selector
mult Mult whether or not we want to find multiple elements
context? any the element to use as the search context basis if desiredCapabilities

Returns

Promise<Mult extends true ? Element[] : Element>

A single element or list of elements

Inherited from

BaseDriver.findElOrElsWithProcessing

Defined in

packages/types/build/lib/driver.d.ts:248


findElementFromShadowRoot

Optional findElementFromShadowRoot(strategy, selector, shadowId): Promise<Element>

Find an element from a shadow root

See

https://w3c.github.io/webdriver/#find-element-from-shadow-root

Parameters

Name Type Description
strategy string the locator strategy
selector string the selector to combine with the strategy to find the specific elements
shadowId string the id of the element to use as the search basis

Returns

Promise<Element>

The element inside the shadow root matching the selector

Inherited from

BaseDriver.findElementFromShadowRoot

Defined in

packages/types/build/lib/driver.d.ts:215


findElementsFromShadowRoot

Optional findElementsFromShadowRoot(strategy, selector, shadowId): Promise<Element[]>

Find elements from a shadow root

See

https://w3c.github.io/webdriver/#find-element-from-shadow-root

Parameters

Name Type Description
strategy string the locator strategy
selector string the selector to combine with the strategy to find the specific elements
shadowId string the id of the element to use as the search basis

Returns

Promise<Element[]>

A possibly empty list of elements inside the shadow root matching the selector

Inherited from

BaseDriver.findElementsFromShadowRoot

Defined in

packages/types/build/lib/driver.d.ts:225


getDeprecatedCommandsCalled

getDeprecatedCommandsCalled(): Promise<string[]>

This is a command that will return a list of deprecated command names called

Returns

Promise<string[]>

Defined in

packages/fake-driver/lib/driver.js:139


getFakeDriverArgs

getFakeDriverArgs(): Promise<StringRecord & ServerArgs>

Get the driver args that were sent in via the CLI

Returns

Promise<StringRecord & ServerArgs>

Defined in

packages/fake-driver/lib/driver.js:129


getFakeThing

getFakeThing(): Promise<any>

Returns

Promise<any>

Defined in

packages/fake-driver/lib/driver.js:107


getLogEvents

getLogEvents(type?): Promise<EventHistory | Record<string, number>>

Get a list of events that have occurred in the current session

Parameters

Name Type Description
type? string | string[] filter the returned events by including one or more types

Returns

Promise<EventHistory | Record<string, number>>

The event history for the session

Inherited from

BaseDriver.getLogEvents

Defined in

packages/types/build/lib/driver.d.ts:123


getLogTypes

getLogTypes(): Promise<string[]>

Get available log types as a list of strings

Returns

Promise<string[]>

Inherited from

BaseDriver.getLogTypes

Defined in

packages/types/build/lib/driver.d.ts:265


getManagedDrivers

getManagedDrivers(): Driver<typeof BASE_DESIRED_CAP_CONSTRAINTS, StringRecord, any>[]

Returns

Driver<typeof BASE_DESIRED_CAP_CONSTRAINTS, StringRecord, any>[]

Inherited from

BaseDriver.getManagedDrivers

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:221


getProxyAvoidList

getProxyAvoidList(sessionId): RouteMatcher[]

Parameters

Name Type
sessionId string

Returns

RouteMatcher[]

Inherited from

BaseDriver.getProxyAvoidList

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:195


getSession

getSession(): Promise<SingularSessionData<typeof BASE_DESIRED_CAP_CONSTRAINTS, void>>

Get the data for the current session

Returns

Promise<SingularSessionData<typeof BASE_DESIRED_CAP_CONSTRAINTS, void>>

A session data object

Inherited from

BaseDriver.getSession

Defined in

packages/types/build/lib/driver.d.ts:137


getSessions

getSessions(): Promise<MultiSessionData<typeof BASE_DESIRED_CAP_CONSTRAINTS, void>[]>

Get data for all sessions running on an Appium server

Returns

Promise<MultiSessionData<typeof BASE_DESIRED_CAP_CONSTRAINTS, void>[]>

A list of session data objects

Inherited from

BaseDriver.getSessions

Defined in

packages/types/build/lib/driver.d.ts:131


getSettings

getSettings(): Promise<StringRecord>

Get the current settings for the session

Returns

Promise<StringRecord>

The settings object

Inherited from

BaseDriver.getSettings

Defined in

packages/types/build/lib/driver.d.ts:309


getStatus

getStatus(): Promise<{}>

Returns

Promise<{}>

Inherited from

BaseDriver.getStatus

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:135


getTimeouts

getTimeouts(): Promise<Record<string, number>>

Get the current timeouts

See

https://w3c.github.io/webdriver/#get-timeouts

Returns

Promise<Record<string, number>>

A map of timeout names to ms values

Inherited from

BaseDriver.getTimeouts

Defined in

packages/types/build/lib/driver.d.ts:53


implicitWait

implicitWait(ms): Promise<void>

Set the implicit wait timeout

Deprecated

Use timeouts instead

Parameters

Name Type Description
ms string | number the timeout in ms

Returns

Promise<void>

Inherited from

BaseDriver.implicitWait

Defined in

packages/types/build/lib/driver.d.ts:32


implicitWaitForCondition

implicitWaitForCondition(condition): Promise<unknown>

Periodically retry an async function up until the currently set implicit wait timeout

Parameters

Name Type Description
condition () => Promise<any> the behaviour to retry until it returns truthy

Returns

Promise<unknown>

The return value of the condition

Inherited from

BaseDriver.implicitWaitForCondition

Defined in

packages/types/build/lib/driver.d.ts:46


implicitWaitMJSONWP

implicitWaitMJSONWP(ms): Promise<void>

Set the implicit wait value that was sent in via the JSONWP

Deprecated

Parameters

Name Type Description
ms number the timeout in ms

Returns

Promise<void>

Inherited from

BaseDriver.implicitWaitMJSONWP

Defined in

packages/types/build/lib/driver.d.ts:66


implicitWaitW3C

implicitWaitW3C(ms): Promise<void>

Set the implicit wait value that was sent in via the W3C protocol

Parameters

Name Type Description
ms number the timeout in ms

Returns

Promise<void>

Inherited from

BaseDriver.implicitWaitW3C

Defined in

packages/types/build/lib/driver.d.ts:59


isFeatureEnabled

isFeatureEnabled(name): boolean

Check whether a given feature is enabled via its name

Parameters

Name Type Description
name string name of feature/command

Returns

boolean

Inherited from

BaseDriver.isFeatureEnabled

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:162


isMjsonwpProtocol

isMjsonwpProtocol(): boolean

Returns

boolean

Inherited from

BaseDriver.isMjsonwpProtocol

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:150


isW3CProtocol

isW3CProtocol(): boolean

Returns

boolean

Inherited from

BaseDriver.isW3CProtocol

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:151


logCustomEvent

logCustomEvent(vendor, event): Promise<void>

Add a custom-named event to the Appium event log

Parameters

Name Type Description
vendor string the name of the vendor or tool the event belongs to, to namespace the event
event string the name of the event itself

Returns

Promise<void>

Inherited from

BaseDriver.logCustomEvent

Defined in

packages/types/build/lib/driver.d.ts:115


logEvent

logEvent(eventName): void

API method for driver developers to log timings for important events

Parameters

Name Type
eventName string

Returns

void

Inherited from

BaseDriver.logEvent

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:130


logExtraCaps

logExtraCaps(caps): void

Parameters

Name Type
caps Partial<ConstraintsToCaps<any> & void>

Returns

void

Inherited from

BaseDriver.logExtraCaps

Defined in

packages/base-driver/build/lib/basedriver/driver.d.ts:94


newCommandTimeout

newCommandTimeout(ms): Promise<void>

Set Appium's new command timeout

Parameters

Name Type Description
ms number the timeout in ms

Returns

Promise<void>

Inherited from

BaseDriver.newCommandTimeout

Defined in

packages/types/build/lib/driver.d.ts:98


onUnexpectedShutdown

onUnexpectedShutdown(handler): void

Set a callback handler if needed to execute a custom piece of code when the driver is shut down unexpectedly. Multiple calls to this method will cause the handler to be executed mutiple times

Parameters

Name Type Description
handler (...args: any[]) => void The code to be executed on unexpected shutdown. The function may accept one argument, which is the actual error instance, which caused the driver to shut down.

Returns

void

Inherited from

BaseDriver.onUnexpectedShutdown

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:103


pageLoadTimeoutMJSONWP

pageLoadTimeoutMJSONWP(ms): Promise<void>

Set the page load timeout value that was sent in via the JSONWP

Deprecated

Parameters

Name Type Description
ms number the timeout in ms

Returns

Promise<void>

Inherited from

BaseDriver.pageLoadTimeoutMJSONWP

Defined in

packages/types/build/lib/driver.d.ts:79


pageLoadTimeoutW3C

pageLoadTimeoutW3C(ms): Promise<void>

Set the page load timeout value that was sent in via the W3C protocol

Parameters

Name Type Description
ms number the timeout in ms

Returns

Promise<void>

Inherited from

BaseDriver.pageLoadTimeoutW3C

Defined in

packages/types/build/lib/driver.d.ts:72


parseTimeoutArgument

parseTimeoutArgument(ms): number

Get a timeout value from a number or a string

Parameters

Name Type Description
ms string | number the timeout value as a number or a string

Returns

number

The timeout as a number in ms

Inherited from

BaseDriver.parseTimeoutArgument

Defined in

packages/types/build/lib/driver.d.ts:106


proxyActive

proxyActive(): boolean

Returns

boolean

Overrides

BaseDriver.proxyActive

Defined in

packages/fake-driver/lib/driver.js:44


proxyCommand

proxyCommand<T>(): Promise<T>

Type parameters

Name Type
T any

Returns

Promise<T>

Defined in

packages/fake-driver/lib/driver.js:65


proxyReqRes

proxyReqRes(req, res): void

Parameters

Name Type
req any
res any

Returns

void

Defined in

packages/fake-driver/lib/driver.js:52


proxyRouteIsAvoided

proxyRouteIsAvoided(sessionId, method, url, body?): boolean

Whether a given command route (expressed as method and url) should not be proxied according to this driver

Parameters

Name Type Description
sessionId string the current sessionId (in case the driver runs multiple session ids and requires it). This is not used in this method but should be made available to overridden methods.
method HTTPMethod HTTP method of the route
url string url of the route
body? any webdriver request body

Returns

boolean

  • whether the route should be avoided

Inherited from

BaseDriver.proxyRouteIsAvoided

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:215


reset

reset(): Promise<void>

Returns

Promise<void>

Inherited from

BaseDriver.reset

Defined in

packages/base-driver/build/lib/basedriver/driver.d.ts:68


scriptTimeoutMJSONWP

scriptTimeoutMJSONWP(ms): Promise<void>

Set the script timeout value that was sent in via the JSONWP

Deprecated

Parameters

Name Type Description
ms number the timeout in ms

Returns

Promise<void>

Inherited from

BaseDriver.scriptTimeoutMJSONWP

Defined in

packages/types/build/lib/driver.d.ts:92


scriptTimeoutW3C

scriptTimeoutW3C(ms): Promise<void>

Set the script timeout value that was sent in via the W3C protocol

Parameters

Name Type Description
ms number the timeout in ms

Returns

Promise<void>

Inherited from

BaseDriver.scriptTimeoutW3C

Defined in

packages/types/build/lib/driver.d.ts:85


sessionExists

sessionExists(sessionId?): boolean

method required by MJSONWP in order to determine whether it should respond with an invalid session response

Parameters

Name Type
sessionId? string

Returns

boolean

Inherited from

BaseDriver.sessionExists

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:142


setFakeThing

setFakeThing(thing): Promise<null>

Set the 'thing' value (so that it can be retrieved later)

Parameters

Name Type
thing any

Returns

Promise<null>

Defined in

packages/fake-driver/lib/driver.js:118


setImplicitWait

setImplicitWait(ms): void

A helper method (not a command) used to set the implicit wait value

Parameters

Name Type Description
ms number the implicit wait in ms

Returns

void

Inherited from

BaseDriver.setImplicitWait

Defined in

packages/types/build/lib/driver.d.ts:38


setNewCommandTimeout

setNewCommandTimeout(ms): void

Set the new command timeout

Parameters

Name Type Description
ms number the timeout in ms

Returns

void

Inherited from

BaseDriver.setNewCommandTimeout

Defined in

packages/types/build/lib/driver.d.ts:24


setProtocolMJSONWP

setProtocolMJSONWP(): void

Returns

void

Inherited from

BaseDriver.setProtocolMJSONWP

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:152


setProtocolW3C

setProtocolW3C(): void

Returns

void

Inherited from

BaseDriver.setProtocolW3C

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:154


startNewCommandTimeout

startNewCommandTimeout(): Promise<void>

Returns

Promise<void>

Inherited from

BaseDriver.startNewCommandTimeout

Defined in

packages/base-driver/build/lib/basedriver/driver.d.ts:55


startUnexpectedShutdown

startUnexpectedShutdown(err?): Promise<void>

Parameters

Name Type
err? Error | NoSuchDriverError

Returns

Promise<void>

Inherited from

BaseDriver.startUnexpectedShutdown

Defined in

packages/base-driver/build/lib/basedriver/driver.d.ts:54


timeouts

timeouts(type, ms, script?, pageLoad?, implicit?): Promise<void>

Set the various timeouts associated with a session

See

https://w3c.github.io/webdriver/#set-timeouts

Parameters

Name Type Description
type string used only for the old (JSONWP) command, the type of the timeout
ms string | number used only for the old (JSONWP) command, the ms for the timeout
script? number the number in ms for the script timeout, used for the W3C command
pageLoad? number the number in ms for the pageLoad timeout, used for the W3C command
implicit? string | number the number in ms for the implicit wait timeout, used for the W3C command

Returns

Promise<void>

Inherited from

BaseDriver.timeouts

Defined in

packages/types/build/lib/driver.d.ts:18


validateDesiredCaps

validateDesiredCaps(caps): boolean

Parameters

Name Type
caps Partial<ConstraintsToCaps<any> & void>

Returns

boolean

Inherited from

BaseDriver.validateDesiredCaps

Defined in

packages/base-driver/build/lib/basedriver/driver.d.ts:100


validateLocatorStrategy

validateLocatorStrategy(strategy, webContext?): void

Parameters

Name Type
strategy string
webContext? boolean

Returns

void

Inherited from

BaseDriver.validateLocatorStrategy

Defined in

packages/base-driver/build/lib/basedriver/core.d.ts:183


fakeRoute

Static fakeRoute(req, res): void

Parameters

Name Type
req any
res any

Returns

void

Defined in

packages/fake-driver/lib/driver.js:193


updateServer

Static updateServer(expressApp, httpServer, cliArgs): Promise<void>

Parameters

Name Type
expressApp any
httpServer any
cliArgs any

Returns

Promise<void>

Overrides

BaseDriver.updateServer

Defined in

packages/fake-driver/lib/driver.js:197