Manual Testing
Interactively test and debug mobile applications and web browsers in real time. Gesture, swipe, tap, type, inspect, and perform comprehensive testing on real hardware directly from your desktop browser.
Note: You can enable Element Explorer during session setup or launch to inspect UI elements and generate Appium locators concurrently while performing manual tests.
Prerequisites:
Having a project created (click here for more information on project creation)
(Optional) Uploading an application binary file (
.apk,.ipa,.apks,.aab) (click here for more information on uploading an application)
Creating a Manual Device Session
Navigate to Sessions: Under Projects, click on the “Sessions” button on your target project card.

Click on “Mobile Session”:

Choose and Filter Devices:
Filter by Platform (
AndroidoriOS).Filter by Region (US, UK/EU, India) to ensure low-latency connectivity.
Filter by Device Type (Real Device or Cloud / AWS Device Farm).
Filter by Brand (Samsung, Apple, Google, OnePlus, Xiaomi, Huawei, etc.) or search by device model name.
Review device details on each card:
CPU, RAM, Resolution, and OS Version
Dedicated vs Shared Device indicator icons
Availability Status:
Available(ready to test),Busy(in use), orMaintenanceDevice User Info: For busy devices on Team or Enterprise tiers, hover/click the user icon to see who is currently using the device.

Configure Session Settings:
Session Name (Required): Enter a descriptive name for your testing session.

Application File (Optional): Choose an uploaded application binary from the dropdown. The app will be automatically installed when the session starts.
Note: You can also install or switch applications later inside an active session using the In-Session App Installer.

Element Explorer Toggle: Enable this toggle to start the session in Object Spy / Element Explorer mode for inspecting UI attributes and testing XPath locators.
Biometrics Bypass Toggle (Beta): Enable this toggle to bypass fingerprint and Face ID prompts for instrumentable debug builds.
Reset App Toggle: Automatically clear application user cache and data before starting.
Switch to Old Device Interface: Toggle if you prefer the classic legacy single-pane view over the modern split-pane workspace.
Click “Start Session”:


Workspace Layout
Device Farm provides a modern Split-Pane Workspace designed for maximum productivity:
Left Pane (Device Stream & Quick Controls): Renders the ultra-responsive, low-latency WebRTC video stream of the physical device with touch interaction overlay and collapsible device control bar.
Right Pane (Metrics, Logs & Info): Displays live device information (OS, CPU architecture, RAM, Resolution, Device UUID), real-time streaming Device Logs, and Appium Logs.
Split Resizing: Drag the divider between panes to customize the view to your screen dimensions.

Navigation & Control Bar
Next to the interactive device screen is a control bar providing hardware, software, and debugging controls.
Device & Session Info:
The top of the session panel provides complete device specifications and runtime details:

Session Name: Name specified during test initiation.
Device Name & Region: Device model and hosting data center location.
Hardware Specs: OS Version, CPU Architecture, RAM, Resolution, and unique Device ID.
Control Bar Actions:
Collapse / Expand Bar: Click the chevron button to collapse the control bar into icon-only mode or expand it with full labels.
Send Keys / Clipboard: Click Send Keys to open the clipboard text input modal. Type or paste long strings, URLs, or credentials and click Send as Keys to type them directly into the focused input field on the device.
Capture Keyboard: Toggle the physical keyboard capture. When enabled, keystrokes typed on your computer keyboard are sent directly to the remote device without using the on-screen soft keyboard.
Screenshot: Take an instant screenshot of the device display. Captured images are stored in the test report and can be downloaded immediately.
Rotate Device (Orientation): Click Rotate to toggle device orientation between Portrait and Landscape modes.
File Upload: Click File Upload to transfer files from your computer directly into the remote device storage (Downloadsfolder on Android;Files > On My iPhone > Chromeon iOS).
In-Session App Installation: Click Install App to open the in-session installer. Upload a new .apk,.ipa,.apks, or.aabfile or choose an existing uploaded app to deploy onto the device on-the-fly without disconnecting.
Create Jira Ticket: Click the Jira icon to open the integrated bug reporting modal. Select your Jira project, issue type (Bug, Task, Sub-task with Parent ID, or Xray test category), enter Summary & Description, choose Priority, and submit. The current device screenshot is automatically attached.Phone Call & SMS Interrupts: For telephony-enabled devices with an active SIM/number:
Trigger Call: Simulates an incoming voice call to verify how your app handles call interruptions.
Trigger SMS: Simulates an incoming text message notification.
Biometrics Bypass: For supported apps, click the fingerprint icon to trigger biometric authentication bypass dynamically during testing.
Lock & Unlock Device: Power off / lock the device screen, or wake / unlock the device (iOS & Android).
Volume Controls: Hardware Volume Up and Volume Down buttons.
Hardware Navigation Buttons:
Back (
KEYCODE_BACK): Navigate back to the previous screen.Home (
KEYCODE_HOME): Return to the home screen.Overview / App Switcher (
KEYCODE_APP_SWITCH): Open the recent applications switcher (Android).
Terminate App: Force terminate the currently running foreground application (iOS).
Network Shaping & Wi-Fi Selector: Choose from preset network profiles (2G, 3G, 4G, Good, Poor) or custom profiles to simulate varying bandwidth, latency, and packet loss. You can also click Add.. to configure and apply a new network profile on the fly.
Video Resolution Selector: For WebRTC iOS sessions, choose your desired stream quality (e.g., Auto,720p,1080p).Zoom Controls: Use the Zoom In (+), Zoom Out (-), and Reset Zoom buttons to adjust device viewport scaling.
Disconnect Session: Click the red power button to disconnect from the device. A confirmation modal will appear. Once confirmed, the session is cleanly released and the comprehensive test report is generated.
In-Session App Installation
The in-session app installer allows testers to test multiple versions of an app or test app upgrades without losing the session connection.
Click Install App on the control bar.
In the dialog, you can:
Upload New App: Drag and drop or browse for a new
.apk,.ipa,.apks, or.aabbinary. The file will upload via fast multipart transfer.Choose Existing App: Select any completed application from your project repository.
Click Install to deploy and launch the application on the remote device.

Device Logs
Live logs stream system-level messages, application traces, and crash stack traces in real time from the moment the device connects.
Click on Show Logs to open the logs panel and Hide Logs to collapse it.


Log Viewer Controls:
Clear Logs: Clears the current log console buffer.
Pause / Lock Logs: Pauses live log autoscroll so you can inspect a specific stack trace while the session continues.
Refresh Logs: Refreshes log buffer from the device daemon.
Disconnect Logs: Pauses log stream to optimize network bandwidth.
Generate JSON Capabilities
Click Generate JSON on the session interface to view and export the current session configuration, device UDID, and authentication payload formatted for Appium automation scripts.

Network Shaping
Network shaping allows you to simulate real-world mobile network conditions by adjusting bandwidth, latency (delay), and packet loss.
Select a preset network profile or choose a custom-created network profile by clicking on the Wi-Fi dropdown menu on the control bar. Click here to view instructions on creating custom network profiles.

Creating a Manual Browser Session
Device Farm enables real desktop browser testing across Google Chrome, Mozilla Firefox, Apple Safari, Microsoft Edge, and Samsung Internet.
Under Projects, click on “Sessions” for your project

Click on “Web Browsers” tab

Click on “Browser Sessions”

Choose a browser from the list (Chrome, Firefox, Safari, Edge)

Enter a “Session Name” and click “Start Session”


Interacting with the Browser:
Interact directly with web pages, test responsive breakpoints, and perform functional tests.
Use the draggable floating control widget to disconnect when done.
End Session: Click Disconnect to terminate the session and view the test execution report.
Analyzing Test Results
Once a manual test session is ended, review and analyze the detailed results:
Test Report: Access the comprehensive test report containing full session video recording, device vitals graphs, device logs, screenshots, and metadata. Click here to learn more about Test Reports and Analysis.
Bug Reporting: Document bugs directly from the report view or submit them to Jira (Reporting Bugs).
Last updated