How to set up your Appium Grid

On This Page What is Appium?What is Appium Grid?May 04, 2026 · 6 min read · Tool Comparison

How to set up your Appium Grid

Delivering high-quality mobile apps requires seamless user experiences, fast performance, and cross-platform compatibility.

Overview

Appium, a leading open-source model for automating aboriginal and hybrid mobile apps, is key to enable scalable and efficient mobile testing.

What is Appium Grid?

Appium Grid enable parallel mobile testing by connecting multiple Appium servers to a primal Selenium Grid Hub, allowing tests to run simultaneously across different devices and platforms.

How to Set Up Appium Grid

  1. Launch the Selenium Grid Hub as the cardinal control for route tryout commands.
  2. Create JSON config file for each Node device and connect them to the Hub.
  3. Launch Appium server instances for each Node using the corresponding JSON configurations.
  4. Define Desired Capabilities for each device to jibe tests with suited Nodes.
  5. Execute your test causa to run them in parallel across configured devices via the Grid.

This clause explainshow to set up an Appium Gridto streamline automated testing across multiple devices and program.

What is Appium?

is an open-source automation testing framework for apps supported by platform like iOS, Android, macOS, and Windows. Similar to, it enables the tester to write test scripts in different program words such as JavaScript, Java, Ruby, Python, PHP, and C #, which can be used for both Android and iOS platforms.

What is Appium Grid?

Appium Gridis a distributed testing architecture that enables parallel execution of across multiple devices and program.

It acts as a span between Appium Servers and, allowing testers to efficiently perform and.

Appium Grid connects a central Hub to multiple Nodes (devices with Appium Servers), enabling simultaneous exam execution on multiple devices, reducing performance time,, and streamline large-scale mobile quiz across Android and iOS.

Also Read:

How Appium Grid Works

The structure of Appium Grid consists of a Hub and Nodes. The hub manages the devices and coordinates the tests, while the Nodes execute the tests on specific devices.

Here is how Appium Grid Works

Appium Grid Architecture

  • Hub:The central server that manages petition and routes them to the appropriate Nodes.
  • Nodes:Remote devices (physical or emulator) relate to the Hub, fulfill tests base on received commands.
  • Test Execution:Commands are sent from the WebDriver client to the Hub, which routes them to the Node for execution.
  • :Tests are run concurrently on multiple device, race up the overall testing procedure.
  • Cross-Platform Testing:Appium Grid supports multiple device-browser combinations, ensuring a wide range of tests.
  • Selenium Grid Integration:Appium leverage Selenium Grid for unlined parallel execution of tests, cut time and streamlining test comparisons.

Prerequisites of Appium Grid

Listed below are the prerequisites for setting up the Appium Grid and starting with the mark browser test on multiple browser-device combination (both Android and iOS) simultaneously:

  • Procure a Mac computer with macOS 10.11 or 10.12, and an iOS device with iOS 9.3 or high.
  • Install Java and set up the surround variables.
  • Install Android Studio and set up Android environment variable.
  • Install Eclipse IDE for Java.
  • Install Appium Desktop and download the Appium Jars for Eclipse.
  • Install Homebrew (for managing missing packages). The 1st command below downloads the script to the local machine, while the 2d command extend the initiation.
/bin/bash -c `` $ (curl -fsSL https: //raw.githubusercontent.com/Homebrew/install/HEAD/install.sh) '' brew install wget e
  • Install Carthage (for managing dependencies).
brew install carthage
  • Install Node & amp; NPM.
brew install node
  • Install Maven.
brew install sensation
  • Install Appium.
npm install -g appium

SUSA automates exploratory testing with persona-driven behavior, catching bugs that scripted automation misses.

  • Install XCode 11 (XCode 7 or higher is required).
npm install -g ios-deploy
  • Install XCUITest Driver.
  • Install TestNG.
  • Install Selenium Standalone Server Jar Package.

How to set up Appium Grid?

Below are the key steps to start setting up Appium grid:

Step 1: Starting Hub by Launching Selenium Grid

The Hub is the key point in the Appium Grid, where Selenium Grid is used to route the JSON test commands to the nodes. It find test requests from the client and routes it to the required Nodes.

Once the Selenium Grid is install as remark in the prerequisites, set up the Hub (launching Selenium Grid) & # 8211; open the command prompting, and navigate to the directory, where the has be downloaded.

Start the Hub by legislate the-role hubflag to the Selenium Standalone Server by enroll the following command:

java -jar selenium-server-standalone- & lt; edition & gt; .jar -role hub

This would depart the hub automatically usingport 4444by default.

One can change the default port by adding an optional parameter -port when running the command.

One doesn ’ t hold to specify the legion name as it can be mold automatically. However, if the tester is using a VPN network, specifying the host becomes necessary.

To view the status of the hub, open a browser window and navigate to http: //localhost:4444/grid/console

Step 2: Configure Appium Node JSON file and connect it to the Selenium Grid Hub

To set up Nodes for the Appium Grid, configure the JSON files for each of the node devices, such as done below for Device 1 (iOS 12, iPhone 8 Plus):

{'' capability '': [{'' deviceName '': `` iPhone 8 Plus '', '' browserName '': `` Safari '', '' adaptation '': '' 12 '', '' maxInstances '': 2, '' automationName '': `` XCUITest '', '' platform '': '' iOS ''}], '' configuration '': {'' cleanUpCycle '' :3000, '' timeout '' :30000, '' proxy '': `` org.openqa.grid.selenium.proxy.DefaultRemoteProxy '', '' url '': '' http: //192.168.31.106:4628/wd/hub '', '' host '': `` 192.168.31.106 '', '' embrasure '': 4628, '' maxSession '': 2, '' register '': true, '' registerCycle '': 5000, '' hubPort '': 4444, '' hubHost '': `` 192.168.31.106 ''}}

This JSON file will help connect the Hub and Nodes and act as a bridge in routing the relevant test to the required device at the Node.

Similarly, configure the JSON Files for other nodes (devices) to progress the Appium Grid.

Then run the driver node by using the following dictation. Make sure that the embrasure parameter refer here is the same as that on the Node Config JSON file.

appium -p 4728 -- nodeconfig /absolute/path/nodeconfigdevice1.json

Note that the default embrasure for Appium Client and server is 4723, while that of the Appium server and prove device is 4724. However, one can specify the embrasure number to debar muddiness.

Step 3: Initialize the Mobile Drivers for Node Devices using Appium

for Device 1 (iOS 12) using the following code This would be the first node for the Appium Grid:

DesiredCapabilities caps = new DesiredCapabilities (); caps.setCapability (`` os_version '', `` 12 ''); caps.setCapability (`` twist '', `` iPhone 8 Plus ''); caps.setCapability (`` real_mobile '', `` true ''); caps.setCapability (`` browserstack.local '', `` false '');

Setting up Desired Capabilities use BrowserStack Capabilities Generator

BrowserStack allows its exploiter to set Desired Capabilities through as shown above.

Similarly, one can set the Desired Capabilities for other devices too (include Android devices) that would be expend as Nodes in the Appium Grid.

The initialization of Node devices will assist in allocating relevant tests to the targeted Node Device upon tally the Capabilities.

By performing the three steps above, tester can set up the Appium Grid, which would help them perform parallel testing on multiple devices by connecting the Appium Servers of the individual devices with a central Hub (Selenium Grid). The multiple device-browser combinations at the nodes will help in performing Cross Device Testing for the test scenario.

Testing on Real Mobile Devices with BrowserStack

Once the Appium Grid is set up, examiner need access to existent mobile devices to run their test suites efficaciously. BrowserStack provides a with grand of Android and iOS devices, enable automated testing through Appium in.

Key Benefits of Using BrowserStack with Appium Grid:

  • Real Device Access:Run automate examination on a wide reach of real iOS and Android device.
  • Built-in Debugging Tools:Identify and fix issues quickly with logs, video recordings, and screenshots.
  • Cross-Platform Testing:Ensure app compatibility across different devices, OS versions, and screen sizes.
  • Parallel Testing:Run screen simultaneously on multiple device to speed up executing and feedback cycles.
  • :Accelerate app bringing with scalable and efficient test infrastructure.

Talk to an Expert

Conclusion

Setting up an Appium Grid enables efficient parallel testing across multiple devices and platform, cut test execution time and ameliorate coverage.

By mix it with real device clouds like BrowserStack, squad can scale mobile automation and deliver high-quality apps faster and more reliably.

Utilitarian Resources for Appium

Tutorials

Best Practices, Tips, and Tricks

Getting Started with

Differences and Comparisons

Tags
49,000+ Views

# Ask-and-Contributeabout this topic with our Discord community.

Related Guides

Automate This With SUSA

Upload your APK or URL. SUSA explores like 10 real users — finds bugs, accessibility violations, and security issues. No scripts needed.

Try SUSA Free

Test Your App Autonomously

Upload your APK or URL. SUSA explores like 10 real users — finds bugs, accessibility violations, and security issues. No scripts.

Try SUSA Free