Appium Desired Capabilities-Android Only

朱鸿畅
2023-12-01

Android Only

These Capabilities are available only on Android-baseddrivers (like UiAutomator2for example).

appActivity

Activity name for the Android activity you  want to launch from your package. This often needs to be preceded by a .  (e.g., .MainActivity instead of MainActivity). By default this capability is  received from the package manifest (action: android.intent.action.MAIN ,  category: android.intent.category.LAUNCHER)

MainActivity, .Settings

appPackage

Java package of the Android app you want to  run. By default this capability is received from the package manifest  (@package attribute value)

com.example.android.myApp,  com.android.settings

appWaitActivity

Activity name/names, comma separated, for the  Android activity you want to wait for. By default the value of this  capability is the same as for appActivity. You must set it to the very first  focused application activity name in case it is different from the one which  is set as appActivity if your capability has appActivity and appPackage.

SplashActivity, SplashActivity,OtherActivity,  *, *.SplashActivity

appWaitPackage

Java package of the Android app you want to  wait for. By default the value of this capability is the same as for  appActivity

com.example.android.myApp,  com.android.settings

appWaitDuration

Timeout in milliseconds used to wait for the  appWaitActivity to launch (default 20000)

30000

deviceReadyTimeout

Timeout in seconds while waiting for device to  become ready

5

allowTestPackages

Allow to install a test package which has  android:testOnly="true" in the manifest. false by default

true or false

androidCoverage

Fully qualified instrumentation class. Passed  to -w in adb shell am instrument -e coverage true -w

com.my.Pkg/com.my.Pkg.instrumentation.MyInstrumentation

androidCoverageEndIntent

A broadcast action implemented by yourself  which is used to dump coverage into file system. Passed to -a in adb shell am  broadcast -a

com.example.pkg.END_EMMA

androidDeviceReadyTimeout

Timeout in seconds used to wait for a device  to become ready after booting

e.g., 30

androidInstallTimeout

Timeout in milliseconds used to wait for an  apk to install to the device. Defaults to 90000

e.g., 90000

androidInstallPath

The name of the directory on the device in  which the apk will be push before install. Defaults to /data/local/tmp

e.g. /sdcard/Downloads/

adbPort

Port used to connect to the ADB server  (default 5037)

5037

systemPort

systemPort used to connect to appium-uiautomator2-server,  default is 8200 in general and selects one port from 8200 to 8299. When you  run tests in parallel, you must adjust the port to avoid conflicts. Read Parallel  Testing Setup Guide for more details.

e.g., 8201

remoteAdbHost

Optional remote ADB server host

e.g.: 192.168.0.101

androidDeviceSocket

Devtools socket name. Needed only when tested  app is a Chromium embedding browser. The socket is open by the browser and  Chromedriver connects to it as a devtools client.

e.g., chrome_devtools_remote

avd

Name of avd to launch

e.g., api19

avdLaunchTimeout

How long to wait in milliseconds for an avd to  launch and connect to ADB (default 120000)

300000

avdReadyTimeout

How long to wait in milliseconds for an avd to  finish its boot animations (default 120000)

300000

avdArgs

Additional emulator arguments used when  launching an avd

e.g., -netfast

useKeystore

Use a custom keystore to sign apks, default  false

true or false

keystorePath

Path to custom keystore, default  ~/.android/debug.keystore

e.g., /path/to.keystore

keystorePassword

Password for custom keystore

e.g., foo

keyAlias

Alias for key

e.g., androiddebugkey

keyPassword

Password for key

e.g., foo

chromedriverExecutable

The absolute local path to webdriver  executable (if Chromium embedder provides its own webdriver, it should be  used instead of original chromedriver bundled with Appium)

/abs/path/to/webdriver

chromedriverExecutableDir

The absolute path to a directory to look for  Chromedriver executables in, for automatic discovery of compatible  Chromedrivers. Ignored if chromedriverUseSystemExecutable is true

/abs/path/to/chromedriver/directory

chromedriverChromeMappingFile

The absolute path to a file which maps  Chromedriver versions to the minimum Chrome that it supports. Ignored if  chromedriverUseSystemExecutable is true

/abs/path/to/mapping.json

chromedriverUseSystemExecutable

If true, bypasses automatic Chromedriver  configuration and uses the version that comes downloaded with Appium. Ignored  if chromedriverExecutable is set. Defaults to false

e.g., true

autoWebviewTimeout

Amount of time to wait for Webview context to  become active, in ms. Defaults to 2000

e.g. 4

intentAction

Intent action which will be used to start  activity (default android.intent.action.MAIN)

e.g.android.intent.action.MAIN,  android.intent.action.VIEW

intentCategory

Intent category which will be used to start  activity (default android.intent.category.LAUNCHER)

e.g. android.intent.category.LAUNCHER,  android.intent.category.APP_CONTACTS

intentFlags

Flags that will be used to start activity  (default 0x10200000)

e.g. 0x10200000

optionalIntentArguments

Additional intent arguments that will be used  to start activity. See Intent  arguments

e.g. --esn <EXTRA_KEY>, --ez  <EXTRA_KEY> <EXTRA_BOOLEAN_VALUE>, etc.

dontStopAppOnReset

Doesn't stop the process of the app under  test, before starting the app using adb. If the app under test is created by  another anchor app, setting this false, allows the process of the anchor app  to be still alive, during the start of the test app using adb. In other  words, with dontStopAppOnReset set to true, we will not include the -S flag  in the adb shell am start call. With this capability omitted or set to false,  we include the -S flag. Default false

true or false

unicodeKeyboard

Enable Unicode input, default false

true or false

resetKeyboard

Reset keyboard to its original state, after  running Unicode tests with unicodeKeyboard capability. Ignored if used alone.  Default false

true or false

noSign

Skip checking and signing of app with debug  keys, will work only with UiAutomator and not with selendroid, default false

true or false

ignoreUnimportantViews

Calls the setCompressedLayoutHierarchy()  uiautomator function. This capability can speed up test execution, since  Accessibility commands will run faster ignoring some elements. The ignored  elements will not be findable, which is why this capability has also been  implemented as a toggle-able setting  as well as a capability. Defaults to false

true or false

disableAndroidWatchers

Disables android watchers that watch for  application not responding and application crash, this will reduce cpu usage  on android device/emulator. This capability will work only with UiAutomator  and not with selendroid, default false

true or false

chromeOptions

Allows passing chromeOptions capability for  ChromeDriver. For more information see chromeOptions

chromeOptions: {args:  ['--disable-popup-blocking']}

recreateChromeDriverSessions

Kill ChromeDriver session when moving to a  non-ChromeDriver webview. Defaults to false

true or false

nativeWebScreenshot

In a web context, use native (adb) method for  taking a screenshot, rather than proxying to ChromeDriver. Defaults to false

true or false

androidScreenshotPath

The name of the directory on the device in  which the screenshot will be put. Defaults to /data/local/tmp

e.g. /sdcard/screenshots/

autoGrantPermissions

Have Appium automatically determine which  permissions your app requires and grant them to the app on install. Defaults  to false. If noReset is true, this capability doesn't work.

true or false

networkSpeed

Set the network speed emulation. Specify the  maximum network upload and download speeds. Defaults to full

['full','gsm', 'edge', 'hscsd', 'gprs',  'umts', 'hsdpa', 'lte', 'evdo'] Check -netspeed  option more info about speed emulation for avds

gpsEnabled

Toggle gps location provider for emulators  before starting the session. By default the emulator will have this option  enabled or not according to how it has been provisioned.

true or false

isHeadless

Set this capability to true to run the  Emulator headless when device display is not needed to be visible. false is  the default value. isHeadless  is also support for iOS, check XCUITest-specific capabilities.

e.g., true

uiautomator2ServerLaunchTimeout

Timeout in milliseconds used to wait for an  uiAutomator2 server to launch. Defaults to 20000

e.g., 20000

uiautomator2ServerInstallTimeout

Timeout in milliseconds used to wait for an  uiAutomator2 server to be installed. Defaults to 20000

e.g., 20000

otherApps

App or list of apps (as a JSON array) to  install prior to running tests

e.g., "/path/to/app.apk",  https://www.example.com/url/to/app.apk, ["/path/to/app-a.apk",  "/path/to/app-b.apk"]

adbExecTimeout

Timeout in milliseconds used to wait for adb  command execution. Defaults to 20000

e.g., 50000

localeScript

Sets the locale script

e.g., "Cyrl" (Cyrillic)

 

转载于:https://www.cnblogs.com/davieyang/p/10066919.html

 类似资料:

相关阅读

相关文章

相关问答