Appium Studio Mobile Automation Testing Tool Tutorial:
Appium Studio is a plug-and-play version of Appium testing which is scalable to any size per your needs. The Community Edition of Appium is absolutely free.
Appium Studio makes Appium testing much better and smoother than before. It enables faster delivery of high-quality mobile apps, as it cuts down the cost & effort of developing and executing an Appium based mobile test automation program.
This tutorial on Appium Studio will give you a complete overview of the tool along with its various features, benefits, download link etc., which in turn will act as a perfect guide to anyone who is new to the Appium tool.
What You Will Learn:
- Benefits & Key Capabilities
- Installation and Set up
- Using the Visual Interface of Appium Studio
- Connecting Devices to Appium Studio
- Test Development
- Test Recording
- Creating and Editing Tests with Object Spy
- Testing Outside an Application
- Performance Testing and Additional Testing Capabilities
- Test Execution
- Using an IDE to Run your Scripts
- Large-Scale Parallel Execution
- Test Analytics
Benefits & Key Capabilities
This tool has been developed by Experitest.
Given below is a quick walkthrough of all the major benefits & key capabilities of this tool:
#1) Quick & Easy setup
- Clicks installer & simplifies hardware requirements.
- This enables you to get started with the automation projects very quickly (within minutes).
- No other environment dependencies.
- No additional installations required.
- Supports both Windows and Mac machines.
#2) Easier iOS Testing
- iOS and Android devices can be connected to both Windows and Mac machines.
- Automated registration for Apple devices to developer accounts.
#3) Improved Test Coverage
- Performs Appium testing outside your app (both iOS & Windows).
- Tests the integration of your app with third-party apps.
- Tests fingerprint authentication, voice command, and Image Injection.
- Performance testing with the real-world.
- Supports testing for all the application types – native, web or hybrid.
- Allows testing customized UI elements.
#4) Great Reporting Capabilities
- Auto-generated HTML reports. PDF and XML Reporting is also supported.
- Audio & Video Recordings.
- Shortening the feedback cycle with detailed reports.
#5) High Re-usability
- Executes your existing Appium tests
- Runs tests developed with Appium Studio on any Appium tool.
#6) Saves time – Simple development & execution of robust tests
- Creating stable tests quickly and leveraging Object Spy and XPath.
- Intuitive UI.
- Automation project boilerplate.
#7) Seamless CI/CD integration and Parallel Execution
- Pre-configured Out-of-the-box web and mobile device grid to support large-scale execution.
- Real-time view of test execution status, and on-device reflection.
- Reports and insights into the issues.
- Hands-free automation directly from CI.
- Executes multiple CI projects in parallel.
#8) 24/7 Customer Support & Road-map visibility
- Getting immediate support for new GA versions and beta versions.
- Committed SLA.
- Backward compatibility commitment.
Installation and Set up
Downloading, Installing, and Setting Up
Click here for free download of Appium Studio.
Let’s delve more into the installation and functionalities of the tool.
This is as simple as 1-2-3. This tool comes as a pre-packaged bundle with all the necessary tools.
Once downloaded, you can just run the installer (a single executable file) and you are ready to go now.
Appium Studio comes in two editions – Community & Enterprise.
Also, check the installation guide for both the editions on Mac as well as Windows. The installation guide also enlists the system requirements to install the tool.
One of the main inconveniences of the traditional Appium tool as well as the other similar ones is that installation and staying updated with the latest versions is a complicated and much time-consuming process. However, with Appium Studio, this is no more an issue.
Another aspect of the installation and setup process that has been simplified is the user’s ability to write and carry out iOS tests from a Windows Machine. The opposite is also possible (writing android tests on an iOS machine).
Guidance and training come from the Appium Studio Community Forum as well as the detailed Online Guide. Appium Studio Forum is a one-stop source where you can get answers to various tool related queries under multiple categories.
Below is a screenshot of the same:
These aides are not only used for staying informed about the tool but also to help the users in getting answers to their questions and keeping them updated about the new versions and functionalities of the tool.
We have observed that the questions are answered quickly either by the Experitest team or by the active and growing users who make up the community.
Using the Visual Interface of Appium Studio
The first thing that a new user will notice when starting the tool for the first time will be a visual interface with guides to help you set up your first test. This makes Appium Studio significantly different from the traditional Appium open source offering.
The guidance does not stop there though. The “Studio” which is Experitest’s own name for their visual interface, gives the users a visual feedback as they work so that they can understand better and identify their errors.
Contained within the visual interface of this tool are the Management tools for Devices and Applications. There is an area where the commands are displayed. It also includes device reflection and Object Spy.
Object Spy provides a visual representation of applications object layout and supports XPath queries to filter and select elements.
Connecting Devices to Appium Studio
It is easy to connect and work on devices that are locally connected. An additional capability of this tool gives the users the ability to connect to remote mobile devices located in Experitest’s SaaS Digital Assurance Lab.
Both Android and iOS devices can be tested on Windows or Mac machines, and this tool also supports simulators and emulators. The guide which is provided with the tool includes a step-by-step tutorial to show the users how to connect to local devices.
Adding a device to Studio:
Simple Apple Credential Provisioning:
Provisioning Apple credentials are also easier than ever in this tool. The online guide will walk the users through the process of gathering the necessary information and then it can be automatically provisioned whenever required.
Opening the device once Provisioning is Completed:
Dynamic Device Reflection:
Once you select a device, be it locally or remotely connected, a device reflection will open automatically.
This reflection is interactive and fully controllable. Users can click on the screen, access third party applications, use any swipe or gesture and click on the home button. You can even test the device’s orientation. You can also employ the object spy here to analyze the objects currently present on the screen.
Totally there are 14 reflective buttons which include Home, Menu, Back, Toggle Orientation, Object Spy, Always on Top, Scale/ scroll mode, Open Device view, Device Log, Device Vitals (CPU-MEM), Unlock, Network conditions, Recent Apps and Close Keyboard.
So, you can do a lot with these buttons!!!
For test development and validation purposes, the device reflection is considered to be extremely powerful. Once you have tests running in the Appium Studio, you can watch them being executed on the device reflection to make sure the behavior is running as you intended.
Installing Applications and Opening them:
The above figure has 8 command icons which help to perform various actions including Install application, launch application, Close application, Clear application data, uninstall the application, delete an application, Import/sign application and Application Window.
So, with the application manager, you will be able to perform any application management action.
For more effective automation, this tool supports version management. This is also visible in the above figure where we have a Version column corresponding to every Application name. You can select the version from the drop-down. A drop-down will automatically appear in the application that has multiple versions.
One of the automatic processes that occur while opening an application is that the Appium Studio will identify the required capabilities and populate the capabilities area then, once populated you can select or deselect the capabilities as per the scenario that you want to automate.
There are a few built-in applications and tests as well within the Appium Studio that will help the new users to get started.
Other than this, we also have 5 pop up menu commands which appear when we right-click on the selected application name as shown in the below image:
This tool allows you to create stable tests quickly.
Scripting tests in the Appium Studio are easy with the help of visual tools and device reflection. You can record tests or use the highly visual Object Spy to create them. It also has an XPath Feature to support the advanced object identification methods.
Each of these testing methods can be used with native, web, and third-party apps.
At this point, you may also like to go through the Appium Studio Self Training that has a total of 8 video tutorials, which, in turn, will equip you to create and run automated tests on iOS and Android devices.
To begin recording a test all you need to do is click the record button.
It can be found in the command area as shown in the below figure:
Then, you can use device reflection to perform the use case. When this is completed, you will see the relevant commands populating the command area. For instant verification, the test can now be run.
You can also select and de-select steps to better manage your test capabilities. The recorded scripts can later be edited.
There are two modes of recording i.e., native and web.
For your convenience, the test code and log files will appear at the bottom of the screen once the recording is completed.
Creating and Editing Tests with Object Spy
The Object Spy allows you to edit and create new tests. The Object Spy is a tool that can identify and highlight the elements on any given page. The identification comes with unique identifiers for native and web apps.
The copy paste functionality is simple and allows the addition of unique identifiers to the command area. This helps to create more robust tests.
In order to help in distinguishing between instrumented, non-instrumented, and web elements the object spy uses a color-coded system. Red is for instrumented, yellow is for non-instrumented and blue is for web elements. Whatever your current selection is, that will always be in green.
Testing Outside an Application
Appium Studio has an incredible capability to perform the test on devices outside the application even on iOS apps. This capability is not available with open source Appium.
With the recorder and Object Spy, you can test system apps on a device and even test 3rd party integration to other apps. This is all carried out as easily as if we test a native app.
Performance Testing and Additional Testing Capabilities
Your coverage areas will be extended with the ability to monitor your device’s behavior, battery and CPU consumption. You can also integrate this capability with Experitest’s Network Virtualization tools.
The tests that you execute from Appium Studio can be executed on local and remote devices. Tests can be executed with or without test capabilities, and run only specific commands.
As the tests are being run on remote devices you can view each device reflection and see the test being executed in real time on the device reflection.
You can also run only the specific test steps by making use of the checkbox present corresponding to each test step as shown in the above image. Only the checked steps will be executed. Another way to run selected steps is by right-clicking on them and then selecting the “Run Steps” option from the menu.
Using an IDE to Run your Scripts
With Appium Studio testers can export their test cases as scripts that can be then run from an IDE like IntelliJ and Eclipse. When exported as scripts test cases give testers the control over any aspect of the test scenario. It also gives testers the flexibility to choose their preferred unit testing framework (JUnit, TestNG, NUnit for .NET).
Finally, testers will have the ability to expand test scripts by forking scenarios and being able to run them on multiple devices at once.
To use this feature and export your code from the Appium Studio, simply create a test case by recording it or add the steps manually. Once the test case is created simply click on the “code” tab below the list of test steps. Once you do that you will see the test caste as a script with all of the steps and capabilities built into the automatically generated code.
Code export with the Appium Studio can be done in many different programming languages like Java, C#, and Python. Simply choose your preferred language while running tests as shown below.
Large-Scale Parallel Execution
When trying to create and execute a mobile test, the number of devices and OS you need to test upon will exponentially increase the number of tests you need to run. The good news is that Appium Studio has a solution for this common problem.
Appium Studio is bundled with grid capabilities using either the SaaS or On-premise Digital Assurance lab to support large-scale executions.
(Note: Click on the image for an enlarged view)
Every test that you execute will generate a test report with detailed results, screenshots, and videos. These reports are easily accessed from the menu.
You can also have a detailed insight into the test steps results. It can be seen in the below images. The first image is showing a detailed report of a particular Login step which was in ‘Passed’ status. And, the second image is showing a detailed report of another step which was in ‘Failed’ status.
In addition, tests results are consolidated in the Digital Assurance Lab, to generate a quality status and actionable insights.
This is a free and simple tool to use. The setup is quick and easy to do. It simplifies the way in which traditional Appium tests are built. It makes mobile app automation testing even better than before (as compared to the standard Appium tool).
The major benefits include building & running iOS tests on Windows machines, enabling wider test coverage (when, for Example, you test outside of your app), power set tool like object spy, recorder and reporting to speed up your work, support for the remote environment.
The tests that are created are stable and can be used with any Appium server.
Appium Studio, as with the standard Appium tool requires creating projects in an IDE. But, the good news about this tool is that the effort required is significantly lower and test stability is much higher. Also, the code is generated automatically and much more quickly.
Even the most expert automation engineers have a simpler time for writing tests in the Appium Studio with tools like the object spy and device reflection. They can use these tools to create, verify and ultimately create an automation project in the IDE of their choice.
Speaking of IDEs – Experitest recently started rolling out a free trial of Appium Studio for Eclipse – a native Eclipse Plug-in that allows you to perform end-to-end mobile test automation directly from within the Eclipse.
=> Download Appium Studio tool from here.
In our next article, we will discuss more on Automate Android Applications Using TestComplete Tool.