A PAGE TALKS ABOUT (Appium Server 2. x @Setup)
Learning and Adapt, Made it Easy
Firstly, let me express my congratulations and sincere gratitude to the Appium Authors and Opensource forum, who have made the Appium framework globally available and shaped Appium Server 2. x as a notable change in the Mobile Apps Automation space.
I have witnessed the evolution of the Appium solution since its inception, taking the lead in its capabilities. Over the years, there have been significant enhancements in the Appium client libraries, widely adopted by Mobile Cloud solutions.
Given the above context, I strongly believe that making technology learning easy would yield quicker and better results than expected. Therefore, I present my approach and willingness to engage firsthand in your systems, ready to deliver the best.
My approach to learning any technology follows a top-down approach, which means understanding the ecosystem from top to bottom <Ecosystem to Components>. This approach allows us to comprehend better and connect the components, making the end-to-end process clearer and more effective in fulfilling the need.
To understand the ecosystem, it is essential to break it down into three stages, namely “Base”, “Build” and “Augment”. This page focuses on “Base” which prepares the “@Setup”, Android environment for Android App Automation using Appium. Play with it just as you would with Selenium Web Automation or any other Opensource automation framework.
Presents the Introduction of Mechanism to Appium Ecosystem Learning easy
The “Base” Phase describes “@Setup” as a Kickstarter Toolkit useful for Android App Automation utilizing Appium Server 2. x features.
The “Base” Phase with “@Setup” focuses on prerequisite readiness, followed by Appium Server 2. x setup and configuration. The decisive step articulates an Automation Readiness check, ensuring that the client script communicates flawlessly with the Appium Server. In turn, the Appium server responds flawlessly, processing commands simulated on the targeted app residing on the emulator. Appium Inspector responds to the App screen mirror for element inspection. This chain ensures readiness for Android App Automation using the latest version of Appium Server. As enthusiasts, we are ready to play, explore, and get firsthand experience in dealing with Apps Automation in any manner.
The “Base” Phase comes with “@Setup” which comprises the following -
Pre-requisite
Hardware
- Intel CPU i5
- 8GB RAM
- 20 GB HDD
Note: The above-mentioned specification, minimum to start, represents my perception aimed at achieving a quicker response and a robust environment.
Software
- OS
- Windows 10 / 11
- NodeJS
- NodeJS (Node JS ^14.17.0 || ^16.13.0 || >=18.0.0)
- NPM (>=8)
Android Setup
- Android Studio
- SDK Tools Installation
- Android APIs Installation
- Emulators Creation
- Emulators Configuration and Launch
- ADB Configuration
Note: I would recommend installing Android Studio, even if we are not using it for development. It aids in effectively managing SDK Tools packages and updates for Android APIs.
Java
- Open JDK 11 onwards
- Note: This is for Java-based Appium Projects to build
Python
- Latest or Stable version
- Note: This is for Python-based Appium Projects to build
The topics mentioned above are covered in sessions 1 to 5 in the @Setup Playlist ( https://www.youtube.com/watch?v=xAyhnjC90e8&list=PLJZ00BZ6ItOMu_AzP3SP_G-vdHhgMCfFg )
You can refer to them as you move forward to consider them as a Kickstarter Toolkit. Individual Session Videos are embedded below.
Appium Ecosystem
- Server
- The backbone of the Appium Ecosystem establishes a session with suitable options to connect with the Android client.
- Server Installation and Uninstallation
- Server Start
Appium Inspector
o Installation of Appium Inspector
o Configuration, Inspects App Elements
o Establish Appium Sessions on Emulator
Driver
- UiAutomator2 is a driver software that facilitates Android App Automation in collaboration with Appium.
- Driver Installation and Uninstallation
Client
- Client Libraries provided by build management frameworks like Gradle, integrated with IDEs for Java-based projects.
- Client Libraries primarily facilitate methods to locate elements, simulate actions, and extract element attribute values.
Automation Readiness
- App Installation
- IDE Configuration with Java / Python based on the nature of the language chosen for App Automation
Project Creation
- Script readiness by Android App Automation using Appium.
- Execute, ensure the Appium session is established, send commands to the Appium session, process them through the Appium server, and respond to the client in terms of actions simulated on the targeted apps.
The topics mentioned above were covered in sessions 6 to 11 in the @Setup playlist ( https://www.youtube.com/watch?v=xAyhnjC90e8&list=PLJZ00BZ6ItOMu_AzP3SP_G-vdHhgMCfFg )
You can refer to them as you move forward to prepare for Appium Server to Android App Automation. Individual Session Videos are embedded below
Android App Automation on Physical Devices by Appium
- Device Configuration suitable for USB Debugging
- Device Session established with Appium Inspector
- Script readiness to ensure.
- Appium Server session establishment with Physical Device
- Simulate actions on the App resided on the Physical Device
Session 12 of @Setup playlist covers the readiness for Android App Automation on a physical device connected to the host system. Refer embedded Session 12 Video
In Conclusion, the “Base” Phase offers “@Setup” for Appium Server 2.x is ready for Andriod App Automation.
Refer to Embed Video to conclude “@Setup” and step forward to dive further into the next page.
This page aims to raise awareness about Appium Server 2. x setup, which is further useful for exploring Appium Server 2. x features and new enhancements. It does not cover any features of Mobile Cloud Solutions or the basics of Mobile Apps QA and Automation.