Since I\'m new to mobile automation, I\'ve been trying to run simple activities using appium maven and eclipse. But When I try to run Calculator app opens but the elements a
By.name("text") is removed from Appium v1.5.0 onwards.
Also just to add cssSelector strategy + methods like getAttribute("color/background") present in Selenium are not supported in Appium for native apps as these are not supported by underlying unit testing framework of Android i.e. UIAutomator.
You can use below options for clicking digits of calculator
driver.findElement(By.id(“com.android.calculator2:id/digit5”)).click();
driver.findElement(By.xpath(“//android.widget.Button[contains(@resource-id,'digit5') and @text='5']”)).click();
driver.findElementByAccessibilityId(“plus”).click();
driver.findElement(By.xpath(“//android.widget.Button[@text='5']”)).click();
Appium is not Selenium: they both implemented using JSON wire protocol and has similar APIs, but not the same ones:
Supported locator strategies for Native android app:
So you cannot use By.name locator strategy for Android driver session, it's not supported.
To make it easy, I suggest using MobileBy in place of By in Appium native tests: you will get the proper options.