Book Image

Appium Essentials

Book Image

Appium Essentials

Overview of this book

Table of Contents (14 chapters)

Index

A

  • advanced user interactions
    • about / Exploring advanced user interactions
    • long press, using / Long press
    • scrolling / Scroll and swipe
    • swiping / Scroll and swipe
    • swiping process / Scroll and swipe
    • drag and drop operation / Drag and drop
    • pinch and zoom gesture / Pinch and zoom
    • alert dialog box / Alerts
    • spinners / Spinners
    • switch button / The switch button
    • slide SeekBar / The slide SeekBar
    • screenshots, capturing / Capturing screenshots
    • screenshots, capturing on test failure / Capturing screenshots on test failure
  • alert dialog box / Alerts
  • Android
    • prerequisites / Important initial points, Important initial points
    • desired capabilities / Necessary desired capabilities for Android and initiating the Android driver
  • Android capabilities
    • about / Android capabilities
    • appPackage / Android capabilities
    • appActivity / Android capabilities
    • appWaitActivity / Android capabilities
    • appWaitPackage / Android capabilities
    • deviceReadyTimeout / Android capabilities
    • enablePerformanceLogging / Android capabilities
    • androidDeviceReadyTimeout / Android capabilities
    • androidDeviceSocket / Android capabilities
    • Avd / Android capabilities
    • avdLaunchTimeout / Android capabilities
    • avdReadyTimeout / Android capabilities
    • avdArgs / Android capabilities
    • chromedriverExecutable / Android capabilities
    • autoWebviewTimeout / Android capabilities
    • intentAction / Android capabilities
    • intentCategory / Android capabilities
    • intentFlags / Android capabilities
    • unicodeKeyboard / Android capabilities
    • resetKeyboard / Android capabilities
  • Android driver
    • initiating / Necessary desired capabilities for Android and initiating the Android driver, Desired capabilities for Android and initiating the Android driver
  • Android emulator / An Android emulator
  • Android hybrid app / Android hybrid apps
  • Android hybrid apps
    • desired capabilities / Desired capabilities for native and hybrid apps
    • about / Android hybrid apps
  • Android native app / Android native apps
  • Android native apps
    • desired capabilities / Desired capabilities for native and hybrid apps
    • about / Native Android apps
  • Android requirements, on Mac
    • about / Android requirements on Windows and Mac
  • Android requirements, on Windows
    • about / Android requirements on Windows and Mac
  • Android SDK
    • installing / Installing the Android SDK
    • URL / Installing the Android SDK
  • Android Settings, Appium GUI for Mac
    • about / Android Settings
  • Android Settings, Appium GUI for Windows
    • about / Android Settings
    • Application pane / Application
    • Launch Device pane / Launch Device
    • Capabilities pane / Capabilities
    • Advanced pane / Advanced
  • Android Settings, Appium GUI settings / Necessary desired capabilities for Android and initiating the Android driver
  • AndroidUI app
    • URL / Alerts
  • Android web app
    • desired capabilities / Desired capabilities for web apps
    • about / Web apps on Android
  • Appium
    • architecture / Appium architecture
    • working, in iOS / Appium on iOS
    • working, in Android / Appium on Android
    • session / Appium session
    • server / The Appium server and its client libraries
    • client libraries / The Appium server and its client libraries
    • advantages / The Appium server and its client libraries, Appium – pros and cons
    • about / Appium – pros and cons
    • disadvantages / Appium – pros and cons
    • installing, for Android / Appium installation for Android
    • URL / Appium for Windows
  • Appium doctor, Appium GUI for Mac / Appium doctor
  • Appium GUI, for Mac
    • about / The Appium GUI for Mac
    • Android Settings / Android Settings
    • iOS Settings / iOS Settings
    • Robot Settings / Robot Settings
    • Save/Open configuration / Save/Open configuration
    • Appium doctor / Appium doctor
    • Inspector / Inspector
    • Recording panel / The Recording panel
  • Appium GUI, for Windows
    • about / The Appium GUI for Windows, About
    • Android Settings / Android Settings
    • General Settings / General Settings
    • Developer settings / Developer settings
    • Inspector / Inspector
  • Appium Inspector
    • Launch/Stop button / The Launch/Stop button
    • Clear button / The Clear button
    • elements, finding with / Finding elements with Appium Inspector
  • Appium installation, for Android
    • JDK, installing on Windows / Installing JDK on Windows
    • Android SDK, installing / Installing the Android SDK
    • system variables, setting for Mac / Setting the system variables for Mac
  • Appium installation, for iOS
    • about / Appium for iOS
    • Xcode, installing / Installing Xcode
    • Homebrew, installing / Installing Homebrew
    • Node / Node and npm
    • npm / Node and npm
  • Appium installation, for Mac
    • about / Appium for Mac
  • Appium installation, for Windows
    • about / Appium for Windows
  • Appium Java client
    • URL / Downloading the necessary JAR files
  • Appium philosophy
    • URL / Appium – pros and cons
  • Appium server
    • about / The Appium server
  • App Under Test (AUT) / Appium – pros and cons

B

  • BMI calculator
    • URL / iOS native apps

C

  • Chrome ADB plugin
    • used, for finding elements / Finding elements for Android web-based apps using the Chrome ADB plugin
  • Clear button, Appium Inspector / The Clear button

D

  • desired capabilities
    • about / Desired capabilities
    • automationName / Desired capabilities
    • platformName / Desired capabilities
    • platformVersion / Desired capabilities
    • deviceName / Desired capabilities
    • app / Desired capabilities
    • browserName / Desired capabilities
    • newCommandTimeout / Desired capabilities
    • autoLaunch / Desired capabilities
    • language / Desired capabilities
    • locale / Desired capabilities
    • udid / Desired capabilities
    • orientation / Desired capabilities
    • autoWebview / Desired capabilities
    • fullReset / Desired capabilities
    • Android capabilities / Android capabilities
    • iOS capabilities / iOS capabilities
    • used, for Android / Desired capabilities for Android and initiating the Android driver
    • used, for native app / Desired capabilities for native and hybrid apps, Desired capabilities for native and hybrid Apps
    • used, for hybrid app / Desired capabilities for native and hybrid apps, Desired capabilities for native and hybrid Apps
    • used, for web apps / Desired capabilities for web apps, Desired capabilities for web apps
    • used, for iOS / Desired capabilities for iOS and initiating theiOS driver
    • iOS driver, initiating / Desired capabilities for iOS and initiating theiOS driver
  • Developer settings, Appium GUI for Windows / Developer settings
  • Develop option, Safari
    • elements, finding for iOS web-based apps / Finding elements for iOS web-based apps using Safari's Develop option
  • drag and drop operation / Drag and drop

E

  • Eclipse Java project
    • setting up / Setting up an Eclipse Java project
    • URL / Setting up an Eclipse Java project
  • elements
    • finding, for Android web-based apps / Finding elements for Android web-based apps using the Chrome ADB plugin
    • finding, for iOS web-based apps / Finding elements for iOS web-based apps using Safari's Develop option
    • finding, for native app / Finding elements for native and hybrid apps
    • finding, for hybrid app / Finding elements for native and hybrid apps
    • finding, with UIAutomatorviewer / Finding elements with UIAutomatorviewer
    • finding, with Appium Inspector / Finding elements with Appium Inspector
  • elements, for iOS web-based apps
    • finding, by ID / Finding elements by ID
    • finding, by name / Finding elements by name
    • finding, by linkText / Finding elements by linkText
    • finding, by Xpath / Finding elements by Xpath
    • finding, by cssSelector / Finding elements by cssSelector
  • elements, with Appium Inspector
    • finding, by Xpath / Finding elements by Xpath
    • finding, by name / Finding elements by name
    • finding, by IosUIAutomation / Finding elements by IosUIAutomation
  • elements, with UIAutomatorviewer
    • finding, by ID / Finding elements by ID
    • finding, by name / Finding elements by name
    • finding, by className / Finding elements by className
    • finding, by AccessibilityId / Finding elements by AccessibilityId
    • finding, by AndroidUIAutomator / Finding elements by AndroidUIAutomator
  • emulators
    • creating / Creating emulators and simulators
    • Android emulator / An Android emulator
  • endpoints
    • URL / The Selenium JSON wire protocol

F

  • fields, Advanced pane
    • SDK Path / Advanced
    • Coverage Class / Advanced
    • Bootstrap Port / Advanced
    • Selendroid Port / Advanced
    • Chromedriver Port / Advanced
  • fields, Application pane
    • Application Path / Application
    • Package / Application
    • Wait for Package / Application
    • Launch Activity / Application
    • Wait for Activity / Application
    • Use Browser / Application
    • Full Reset / Application
    • No Reset / Application
    • Intent Action / Application
    • Intent Category / Application
    • Intent Flags / Application
    • Intent Arguments / Application
  • fields, Capabilities pane
    • Platform Name / Capabilities
    • Automation Name / Capabilities
    • PlatformVersion / Capabilities
    • Device Name / Capabilities
    • Language / Capabilities
    • Locale / Capabilities
  • fields, Developer settings
    • Enabled / Developer settings
    • Use External NodeJS Binary / Developer settings
    • Use External Appium Package / Developer settings
    • NodeJS Debug Port / Developer settings
    • Break on Application Start / Developer settings
    • Custom Server Flags / Developer settings
  • fields, Launch Device pane
    • Launch AVD / Launch Device
    • Device Ready Timeout / Launch Device
    • Arguments / Launch Device
  • fields, Logging pane
    • Quiet Logging / Logging
    • Show Timestamps / Logging
    • Log to File / Logging
    • Log to WebHook / Logging
    • Use Local Timezone / Logging
  • fields, Server pane
    • Server Address / Server
    • Port / Server
    • Check for Updates / Server
    • Override Existing Session / Server
    • Use Remote Server / Server
    • Selenium Grid Configuration File / Server

G

  • General Settings, Appium GUI for Windows
    • about / General Settings
    • Server pane / Server
    • Logging pane / Logging
  • Gson
    • URL / Downloading the necessary JAR files

H

  • Homebrew
    • installing / Installing Homebrew
  • hybrid apps
    • automating / Automating hybrid apps
    • Android hybrid app / Android hybrid apps
    • iOS hybrid app / iOS hybrid apps
  • hybrid apps automation
    • about / Hybrid apps' automation
    • Android hybrid apps / Android hybrid apps
    • iOS hybrid apps / iOS hybrid apps

I

  • Inspector, Appium GUI for Mac / Inspector
  • iOS
    • prerequisites / Important initial points, Important initial points
    • desired capabilities / Necessary desired capabilities for iOS and initiating the iOS driver
    • initiating / Necessary desired capabilities for iOS and initiating the iOS driver
  • ios-webkit-debug-proxy
    • installing / Installing provisional profile, SafariLauncher, and ios-webkit-debug-proxy
    • about / SafariLauncher app and ios-webkit-debug-proxy
  • iOS capabilities
    • about / iOS capabilities
    • calendarFormat / iOS capabilities
    • bundleId / iOS capabilities
    • launchTimeout / iOS capabilities
    • locationServicesEnabled / iOS capabilities
    • locationServicesAuthorized / iOS capabilities
    • autoAcceptAlerts / iOS capabilities
    • nativeInstrumentsLib / iOS capabilities
    • nativeWebTap / iOS capabilities
    • safariAllowPopups / iOS capabilities
    • safariIgnoreFraudWarning / iOS capabilities
    • safariOpenLinksInBackground / iOS capabilities
    • keepKeyChains / iOS capabilities
    • processArguments / iOS capabilities
    • interKeyDelay / iOS capabilities
  • iOS Developer Program
    • URL / Provisional profile
  • iOS hybrid app / iOS hybrid apps
  • iOS hybrid apps
    • desired capabilities / Desired capabilities for native and hybrid apps
    • about / iOS hybrid apps
  • iOS native app / iOS native apps
  • iOS native apps
    • about / Native iOS apps
  • iOS requirements
    • about / iOS requirements
  • iOS settings
    • for web apps / Desired capabilities for iOS and initiating theiOS driver
  • iOS Settings, Appium GUI for Mac
    • about / iOS Settings
    • Application tab / Application
    • Device Settings tab / Device Settings
    • Advanced tab / Advanced
  • iOS simulator / An iOS simulator
  • iOS TestApp
    • URL, for example / Native iOS apps
  • iOS web apps
    • desired capabilities / Desired capabilities for web apps
    • about / Web apps on iOS

J

  • JAR files
    • downloading / Downloading the necessary JAR files
  • JDK
    • installing, on Windows / Installing JDK on Windows
  • JSON wire protocol (JSONWP) / The Selenium JSON wire protocol

L

  • Launch/Stop button, Appium Inspector / The Launch/Stop button
  • long press
    • using / Long press

N

  • native apps
    • automating / Automating native apps, Automating native apps
    • Android native apps / Native Android apps
    • iOS native apps / Native iOS apps
    • Android native app / Android native apps
    • iOS native app / iOS native apps

O

  • options, Advanced tab
    • Use Native Instruments Library / Advanced
    • Backend Retries / Advanced
    • Instruments Launch Timeout / Advanced
    • Trace Template Path / Advanced
    • Choose / Advanced
    • Xcode Path / Advanced
  • options, Application tab
    • App Path / Application
    • Choose / Application
    • BundleID / Application
    • Use Mobile Safari / Application
  • options, Device Settings tab
    • Force Device / Device Settings
    • Platform Version / Device Settings
    • Force Orientation / Device Settings
    • Force Language / Device Settings
    • Force Calendar / Device Settings
    • Force Locale / Device Settings
    • UDID / Device Settings
    • Full Reset / Device Settings
    • No Reset / Device Settings
    • Show Simulator Log / Device Settings

P

  • pinch and zoom gesture / Pinch and zoom
  • provisional profile
    • installing / Installing provisional profile, SafariLauncher, and ios-webkit-debug-proxy
    • about / Provisional profile

R

  • Recording panel, Appium GUI for Mac / The Recording panel
  • Robot Settings, Appium GUI for Mac / Robot Settings

S

  • SafariLauncher app
    • installing / Installing provisional profile, SafariLauncher, and ios-webkit-debug-proxy
    • about / SafariLauncher app and ios-webkit-debug-proxy
  • Save/Open configuration, Appium GUI for Mac / Save/Open configuration
  • scrolling process / Scroll and swipe
  • Selenium JSON wire protocol
    • about / The Selenium JSON wire protocol
  • Selenium Server
    • URL / Downloading the necessary JAR files
  • simulators
    • creating / Creating emulators and simulators
    • iOS simulator / An iOS simulator
  • slide SeekBar / The slide SeekBar
  • spinners / Spinners
  • swiping process / Scroll and swipe
  • switch button / The switch button
  • system requirements, for Android
    • about / System requirements for Android/iOS
  • system requirements, for iOS
    • about / System requirements for Android/iOS

T

  • testApp, GitHub
    • URL, for example / Android hybrid apps
  • TestNG
    • installing / Setting up an Eclipse Java project
  • TestNG listeners
    • URL / Capturing screenshots on test failure

U

  • UIAutomator library
    • URL / Finding elements by AndroidUIAutomator
  • UIAutomatorviewer
    • elements, finding with / Finding elements with UIAutomatorviewer
  • USB debugging
    • enabling / Important initial points

W

  • web-apps
    • working with / Working with web-apps
  • web apps
    • working with / Working with web apps
    • on Android / Web apps on Android
    • on iOS / Web apps on iOS
  • WebDriver Java client
    • URL / Downloading the necessary JAR files
  • WebViewApp, GitHub
    • URL, for example / iOS hybrid apps

X

  • Xcode
    • installing / Installing Xcode
    • URL / Installing Xcode