Search code examples
javaappiumappium-android

Appium error while instantiating the object


This is a BeforeClass that I was creating (Java, Appium, TestNG)

private AndroidDriver driver;

@BeforeClass
public void setUp() throws MalformedURLException{
    DesiredCapabilities desiredCapabilities = new DesiredCapabilities();
    desiredCapabilities.setCapability(MobileCapabilityType.APPIUM_VERSION, "1.7.1");
    desiredCapabilities.setCapability(MobileCapabilityType.PLATFORM_NAME,"Android");
    desiredCapabilities.setCapability("deviceName", "9NLJA17619012618");
    desiredCapabilities.setCapability("appActivity", ".activity.LaunchActivity");
    desiredCapabilities.setCapability("appPackage", "com.aaa.app");     
    desiredCapabilities.setCapability("platformVersion", "7.1.2");
    URL url = new URL("http://localhost:4723/wd/hub");
    driver = new AndroidDriver(url,desiredCapabilities);
}

(I know there is a mix of MobileCapabilityType and others without that format, but that i not the point I think)

And then a bunch of @Test

This error appeared:

Failed tests:   setUp(tests.TestShop): 
class io.appium.java_client.android.AndroidDriver has interface io.appium.java_client.AppiumDriver as super class

Any Clue?


Solution

  • add MobileElement or WebElement while initializing appium driver.

    driver = new AndroidDriver<MobileElement>(url,desiredCapabilities);
    

    Also change your deviceName to udid. Also make sure your appActivity is correct.

    Your code must be like following:

    @BeforeClass
    public void setUp() throws MalformedURLException{
        DesiredCapabilities desiredCapabilities = new DesiredCapabilities();
        desiredCapabilities.setCapability("platformName","Android");
        desiredCapabilities.setCapability("deviceName", "Any name");
        desiredCapabilities.setCapability("udid", "9NLJA17619012618");
        desiredCapabilities.setCapability("appActivity", ".activity.LaunchActivity");
        desiredCapabilities.setCapability("appPackage", "com.aaa.app");     
        desiredCapabilities.setCapability("platformVersion", "7.1.2");
        URL url = new URL("http://localhost:4723/wd/hub");
        driver = new AndroidDriver<MobileElement>(url,desiredCapabilities);
    }