S2E2 — Mobile Test Automation with Appium 2.0 and Java
In this video, we will do 2 examples with Appium 2.0:
- MobilWeb Test Automation on iPhone Safari (xcuitest). Example Website is our Youtube channel https://www.youtube.com/c/SoftwareTestingBootcamp
- Native Android app Test Automation on Android device (uiautomator2) Example App is https://play.google.com/store/apps/details?id=com.bilgikolik.app&hl=tr&gl=US
Topics other than mobile automation are out of the scope of this doc.
Webinar Video:
Requirements:
- Java JDK 11 installation
- Homebrew installation
- NodeJS installation
- IntelliJ IDEA CE Installation
- Appium Server v2.0.0-beta.25 installation (Required for Mobile TestRun & Debugging)
- Appium Desktop v1.22 installation (Optional)
- Appium Inspector v2022.1.2 installation (Required for Debugging the Apps)
- Android Studio installation (Required for Android Emulator access)
- Xcode installation (Required for iOS Simulator access)
Appium Server & Driver Installation
Before starting Appium server installation, you need to install NodeJS
npm install -g appium@next
appium driver install uiautomator2
appium driver install xcuitest
Appium Plugin Installation
appium plugin install --source=npm appium-wait-plugin
appium plugin install --source=npm appium-device-farm
appium plugin install --source=npm appium-dashboard
Appium Wait Plugin Activation
source ~/.bash_profile
appium --use-plugins element-wait
NOTE: Now you can say goodbye to your “wait.until” commands on your automation project.
Appium Device Farm Plugin Activation
source ~/.bash_profile
appium server -ka 800 --use-plugins=element-wait,device-farm,appium-dashboard --plugin-device-farm-platform=Android
NOTE: Please visit this link after activation to check your devices. http://localhost:4723/device-farm/
As you can see here, many features in Appium version1 are now decoupled. Whatever you need, you have to install it
How to run?
Run TestNG’s “suite/AndroidGroup.xml” file to start the Android App automation. Remember that you have to create a new Android Emulator on your computer within Android Studio AVD Manager.
Run TestNG’s “suite/SafariGroup.xml” file to start the Safari MobileWeb automation. Remember that you have to enable your Safari Developer options and activate “Automatically Show Web Inspector for JSContexts” for your iOS simulator.
Github
Resources
https://github.com/appium/appium-inspector
https://github.com/appium/appium-desktop
https://github.com/appium/appium-plugins
https://github.com/AppiumTestDistribution/appium-wait-plugin
https://github.com/AppiumTestDistribution/appium-device-farm
https://github.com/appium/java-client/blob/master/docs/v7-to-v8-migration-guide.md
https://javadoc.io/doc/io.appium/java-client/latest/deprecated-list.html