How to connect Android Emulator with Appium

  

What is an Android Emulator?

An Android Emulator is a virtual Android device that runs on your computer. It mimics the hardware and operating system of a real Android smartphone or tablet so you can develop, test, and debug Android applications without needing a physical device.



Prerequisites


RequirementDescription
Android StudioInstalled and configured with Android SDK & Emulator
AppiumInstalled via Appium Desktop or npm
Node.jsRequired for Appium
JavaJDK 8+ installed and configured with JAVA_HOME
Appium Inspector(Optional) To inspect UI elements
Appium Java ClientFor writing test scripts in Java
EmulatorCreated & launched using AVD Manager



Step-by-Step Guide

1. Set up Android Emulator

  • Open Android Studio → AVD Manager

  • Create a Virtual Device (example: Pixel 4 with Android 11)

  • Launch the emulator


Tip: You can also launch via command line:

emulator -avd <emulator_name>


2. Check Emulator Connection

Run in terminal or CMD:

adb devices




Output should look like:


List of devices attached
emulator-5554	device




3. Install Appium

npm install -g appium




4. Start Appium Server


From command line:

appium


Or use Appium Desktop and click "Start Server".



5. Set Desired Capabilities

These are needed to connect to your emulator.

{
  "platformName": "Android",
  "platformVersion": "11.0",
  "deviceName": "emulator-5554",
  "automationName": "UiAutomator2",
  "app": "path/to/your/app.apk",
  "noReset": true
}


You can set these in Appium Desktop (Inspector) or in your Java code.



6. Example Java Code to Connect Emulator


import io.appium.java_client.android.AndroidDriver;
import io.appium.java_client.MobileElement;
import org.openqa.selenium.remote.DesiredCapabilities;
import java.net.URL;

public class EmulatorTest {
    public static void main(String[] args) throws Exception {
        DesiredCapabilities caps = new DesiredCapabilities();

        caps.setCapability("platformName", "Android");
        caps.setCapability("platformVersion", "11.0");
        caps.setCapability("deviceName", "emulator-5554");
        caps.setCapability("automationName", "UiAutomator2");
        caps.setCapability("app", "C:\\path\\to\\your\\app.apk");
        caps.setCapability("noReset", true);

        AndroidDriver<MobileElement> driver = new AndroidDriver<>(
            new URL("http://127.0.0.1:4723/wd/hub"), caps
        );

        // Example action
        System.out.println("App launched successfully!");
        driver.quit();
    }
}






Things to check before test:


CheckDescription
Emulator is runningMake sure the emulator is active
Appium server is startedRun via terminal or Appium Desktop
ADB device listedadb devices shows emulator
APK path correctValid path to your .apk file
Appium Java client addedAdd it to your pom.xml or build.gradle

No comments:

Post a Comment