Question:-What Is Appium?
Answer:-Appium is nothing just a tool to automate your mobile devices
Appium is mobile web, native and hybrid software application test automation tool.
It is open-source software automation tool which is useful to automate android and IOS platform apps.
Most important thing is : Appium is “cross-platform” automation tool so you can write software automation tests against iOS and Android (multiple platforms) using same API.
“cross-platform” enables you large amount of code reuse between iOS and Android test suites.
Appium support software test automation on emulator or simulator and physical mobile devices too.
Aooium is developed on few key philosophy points :
1. Should not have to recompile your app to automate it.
2. Should not be locked into a specific language or framework.
3. Should be open source and
4. Should not reinvent the wheel when it comes to automation APIs.
Question:-Why Need Appium?
If you are mobile app software test engineer,
Appium can makes your mobile app regression testing task easy.
Specially for large mobile apps where continues apps are updating with new features and functionalities.
Another main benefit of using appium for mobile app automation is : It supports bellow given multiple platforms and languages.
Also you can use any testing framework.
Multiple Platforms Support
Appium support bellow given different platforms.
Multiple Languages Support
Appium supports bellow given languages with the Selenium WebDriver API and language-specific client libraries.
Also there are other advantages like no source code is needed to test app as you can test it directly, also you can engage built in apps like camera, calendar etc in your test script if required.
Question: What are Native Apps?
Answer : Native apps are those written using the iOS or Android SDKs.
Question: What are Mobile Web Apps?
Answer: Mobile web apps are web apps accessed using a mobile browser.
Note: Appium supports Safari on iOS and Chrome or the built-in 'Browser' app on Android.
Question:-What are the basic requirements to write Appium tests?
Answer:- To write Appium tests we require:
• Driver Client: Appium drives mobile applications as though it were a user. Using a client library you write your Appium tests which wrap your test steps and sends to the Appium server over HTTP.
• Appium Session: You have to first initialize a session, as such Appium test takes place in the session. Once the Automation is done for one session, it can be ended and wait for another session
• Desired Capabilities: To initialize an Appium session you need to define certain parameters known as “desired capabilities” like PlatformName, PlatformVersion, Device Name and so on. It specifies the kind of automation one requires from the Appium server.
• Driver Commands: You can write your test steps using a large and expressive vocabulary of commands.
Question: What are Hybrid Apps?
Answer: Hybrid apps have a wrapper around a "webview" -- a native control that enables interaction with web content.
Question:-Limitations Of Appium
Answer:-There are few limitation in appium right now.
For Android, No Support for Android API level < 17.
Script execution is very slow on IOS platform.
Gestures support is limited.
No support for Toast messages.
I think, this is enough to use any open source software automation testing tool in terms of usage flexibility.
Note : Appium supports only Android 17+ API level versions. Otherwise you need to use selendroid. You can find API level for your phone based on its version at THIS PAGE. That means, You can use appium if your phone contain Android 4.2 or greater version.
We will see how to execute android native app automation test in android device and emulator using appium in my upcoming posts.Upcoming posts will also describe you how to configure environment in windows to use appium software testing tool.
Question:- What are the prerequisites to install appium in windows?
Answer:- click here
Question:- What is Node.js?
Answer : It is cross-platform runtime environment which is used to develop server-side software web applications. It is open-source so you can use it without any cost.
Question:- What is Desired Capabilities and how it is used in Appium software testing tool?
Answer:- Desired Capabilities is bunch of keys and it's value. Using this set of keys and values we can tell to appium server that what kind of automation session we are going to create. Example : If you set platformName = Android then appium will understand that you wants to create automation session to run test on Android.
Answer:- There are main three reasons to use appium in mobile software automation.
When you perform software automation test using appium, It is not required to modify or recompile your software app as appium use standard software automation APIs on all platforms.
You can write automation tests for mobile software app in your favorite WebDriver-compatible language like java, C#, PHP, Python etc.
Appium allows you to use any testing framework.
Question:- How to configure android device to run software test using appium in devices?
Answer:- click here
Question:-Tell me the command name for windows to verify that android device is connected with PC.
Answer:- You can run adb devices command in windows to make sure that device is connected properly with PC to run appium tests on it.
Question:-Can we locate android app's elements from emulator using UI Automator Viewer tool?
Answer:- Yes, UI Automator Viewer tool support physical android devices as well as android emulators so you can use it to inspect app's elements from android emulators too..
Question:-Tell me different ways to locate android app elements in appium automation.
Answer:- You can locate android app's elements using bellow given different ways.
Question:-What is use of package and launcher activity name of Android app in appium automation test?.
Answer:- In appium automation test, We need to provide android app's package and launcher activity name so that appium can understand which application to launch for a test when you start running appium test. We can set package and launcher activity name as desired capability.
Question:-What are the different way to find app package & app activity.
Question:-How to scroll in appium.
Question:-Can we run iOS automation test in windows using appium?
Answer:- No, You can not run iOS automation test in windows as Appium relies on OS X-only libraries to support iOS testing. You can use Remote Server option to connect to appium server which is running on MAC.
Question:-What is Appium Inspector?
Answer:- • Similar to Selenium IDE record and Playback tool, Appium has an “Inspector” to record and playback.
• It records and plays native application behaviour by inspecting DOM and generates the test scripts in any desired language.
• However, Appium Inspector does not support Windows and use UIAutomator viewer in its option.
Question:-Explain the design of Appium?
Answer:- • Appium is an “HTTP Server” written using Node.js platform and drives iOS and Android session using Webdriver JSON wire protocol.
• When Appium is downloaded and installed, then a server is setup on our machine that exposes a REST API.
• Appium receives connection and command request from the client and execute that command on mobile devices (Android / iOS).
• Appium responds back with HTTP responses. Again, to execute this request, it uses the mobile test automation frameworks to drive the user interface of the apps.
Question:-Can you tell me how to perform screen orientation?
Answer:- We can perform LANDSCAPE and PORTRAIT screen orientation in appium test using bellow given command syntax.
LANDSCAPE to PORTRAIT :
PORTRAIT to LANDSCAPE :
Question:-How to acroll in appium.