A Brief Introduction to Appium Inspector: Part 1 — Creating Sessions
How to use Appium Inspector’s GUI to create an inspection session
In previous articles, we focus on the set-up of Appium (XCUITest) Execution in Simulator. In most of those articles, I provided element Ids and XPaths to get there. In this article, I’ll briefly introduce how to set up and use Appium Inspector so that you can get these locators yourself.
For web automation, browser’s have an Inspect mode to view attributes such as
While the same principle applies to mobile test automation, it is harder because as far as I am aware there is no built-in inspector. Therefore, we will use a separate utility, such as Appium Inspector. Appium Inspector (also created by the Appium team) is a GUI Inspector for mobile and desktop apps.
To install Appium Inspector, install the latest release from their Github page:
Releases · appium/appium-inspector
You can't perform that action at this time. You signed in with another tab or window. You signed out in another tab or…
Follow the installation process for your operating system and Appium Inspector should be up and running in no time!
Note, there is a web version of Appium Inspector (available here), however, I prefer to use the application.
How to Use Appium Inspector
There are three key parts of Appium Inspector:
- Creating a session
To start inspecting, you will either need to create a brand-new Appium session or attach to an existing session.
- Navigating the app
You can navigate through Appium Inspector or through the simulator.
- Viewing an element’s details
This will help retrieve an element’s locators that you can use in your scripts.
This article will only cover step 1 — Creating and attaching to Appium sessions in Appium Inspector.
Creating a Brand New Session
In order to create a session, you will need to provide some Appium settings (named “capabilities”). Some of the important capabilities are the: desired platform (iOS/Android), device type and app path.
For instance, the capabilities for the TicTacToe app from this article are:
"deviceName": "iPhone 13",
Unfortunately, Appium Inspector does not allow a straight JSON input for capabilities yet. Instead, you will need to copy each field over manually (see red fields below).
Please also leave the
Automatically add necessary Appium vendor prefixes on start box ticked. You can verify your capabilities on the right-hand side’s JSON translation.
You can choose to save this capability set under a shortcut (e.g. “iOS Tic Tac Toe”) to avoid manually entering these fields again. I highly recommend saving your capability set if you plan to access that app more than once.
Once it’s ready, you can click “Start Session”. You should see Appium Inspector transition to inspect mode. Meanwhile, a simulator will boot up, install and start the specified app.
Attaching to an Existing Session
Starting a brand new session is easy, however, it forces you to start at the very start (a freshly installed copy of the app). This can be inconvenient for debugging or if you want to pick up where a script leaves off. Luckily, Appium Inspector does provide one method to “attach” (i.e. continue on) from an existing Appium session.
If you start your own Appium session (either through a script or otherwise), this line will appear on the command line running the
[XCUITestDriver@76ce (8ee913d1)] Session created with session id: 8ee913d1-8c08-4d50-bf7d-dac3b74ce3dc
Copy this sessionId, as we’ll use this in Appium Inspector to attach.
In Appium Inspector, click on the third tab “Attach to Session…”.
There is a drop-down box where you can paste the sessionId from the command-line and select it from the drop-down. The input box should autofill with the capability information to help verify you have the right session.
From here, you can click “Attach to Session” and you Appium Inspector will load their Inspector Mode on where your simulator already is!
In the next two articles, I will go through how to navigate, interact and inspect elements in Appium Inspector.