Best io.appium code snippet using io.appium.java_client.MobileBy.AccessibilityId
FirstAndroidTest.java
Source: FirstAndroidTest.java
...27 public AppiumDriver driver;28 public AndroidTouchAction touchAction;29 private TouchAction action;30 private By editText = MobileBy.id("edit");31 private By views = MobileBy.AccessibilityId("Views");32 private By grid = MobileBy.AccessibilityId("Grid");33 private By animation = MobileBy.AccessibilityId("Animation");34 private By textField = MobileBy.AccessibilityId("TextFields");35 // private By webView2 = MobileBy.AccessibilityId("WebView2");36 private By title = MobileBy.xpath("//android.webkit.WebView/android.view.View[1]");37 @BeforeTest38 public void setUp() throws MalformedURLException {39 DesiredCapabilities caps = new DesiredCapabilities();40 caps.setCapability("platformName", "Android");41 caps.setCapability("automationName", "UiAutomator1");42 caps.setCapability("platformVersion", "7.1.1");43 caps.setCapability("deviceName", "Android Emulator");44 caps.setCapability("appPackage", "com.swaglabsmobileapp");45 caps.setCapability("appActivity", "com.swaglabsmobileapp.SplashActivity");46 caps.setCapability("udid", "emulator-5554");47// caps.setCapability("app", System.getProperty("user.dir") + "/apps/ApiDemos-debug.apk");48 driver = new AndroidDriver(new URL("http://localhost:4723/wd/hub"), caps);49 driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);50 }51 @Test52 public void clickButtonTest() {53 MobileElement editTextName = (MobileElement) driver.findElementByAccessibilityId("test-Username");54 MobileElement editTextPaswd = (MobileElement) driver.findElementByAccessibilityId("test-Password");55 MobileElement btnLogin = (MobileElement) driver.findElementByAccessibilityId("test-LOGIN");56 editTextName.sendKeys("shimma");57 editTextPaswd.sendKeys("dhjssa");58 btnLogin.click();59 MobileElement errMsg = (MobileElement) driver.findElementByXPath("//android.view.ViewGroup[@content-desc=\"test-Error message\"]/android.widget.TextView");60 Assert.assertEquals(errMsg.getAttribute("text"), "Username and password do not match any user in this service.");61 }62 @Test63 public void clickViewsTest() throws InterruptedException {64 action = new TouchAction(driver);65 action.tap(ElementOption.element(driver.findElement(views))).perform();66 MobileElement webVi = (MobileElement) driver.findElement(MobileBy.AndroidUIAutomator(67 "new UiScrollable(new UiSelector().scrollable(true))" +68 ".scrollIntoView(new UiSelector().text(\"WebView2\"))"));69 webVi.click();...
ProductPage.java
Source: ProductPage.java
...10 public AppiumDriver<?> driver;11 WebDriverWait wait;12 By product1 = MobileBy.xpath("//android.widget.TextView[@text='Sauce Labs Backpack']");13 By addToCartBtn = MobileBy.xpath("//android.view.ViewGroup[@content-desc='test-ADD TO CART']");14 By productPrice = MobileBy.AccessibilityId("test-Price");15 By backToProductsBtn = MobileBy.AccessibilityId("test-BACK TO PRODUCTS");16 By removeBtn = MobileBy.AccessibilityId("test-REMOVE");17 By cartbtn = MobileBy.xpath("//android.view.ViewGroup[@content-desc='test-Cart']/android.view.ViewGroup/android.widget.ImageView");18 By cartHeader = MobileBy.xpath("//android.widget.TextView[@text='YOUR CART']");19 By checkoutBtn = MobileBy.AccessibilityId("test-CHECKOUT");20 By checkoutHeader = MobileBy.xpath("//android.widget.TextView[@text='CHECKOUT: INFORMATION']");21 By firstName = MobileBy.AccessibilityId("test-First Name");22 By lastName = MobileBy.AccessibilityId("test-Last Name");23 By zipCode = MobileBy.AccessibilityId("test-Zip/Postal Code");24 By checkoutContinue = MobileBy.AccessibilityId("test-CONTINUE");25 By overviewHeader = MobileBy.xpath("//android.widget.TextView[@text='CHECKOUT: OVERVIEW']");26 By finishBtn = MobileBy.AccessibilityId("test-FINISH");27 By completeHeader = MobileBy.xpath("//android.widget.TextView[@text='CHECKOUT: COMPLETE!']");28 By completeMsg = MobileBy.AccessibilityId("THANK YOU FOR YOU ORDER");29 By backHomeBtn = MobileBy.AccessibilityId("test-BACK HOME");30 public ProductPage(AppiumDriver<?> driver) {31 this.driver = driver;32 this.wait = new WebDriverWait(driver, 10);33 }34 public void checkoutProduct(String firstName_, String lastName_, String zip_) {35 isDisplayed(product1);36// click(product1);37// wait(backToProductsBtn);38// logScreenshot("PDP Page");39// isDisplayed(productPrice);40 click(addToCartBtn);41 logScreenshot("add to cart");42 wait(removeBtn);43 click(cartbtn);...
CalculatorPageObject.java
Source: CalculatorPageObject.java
...6import java.util.HashMap;7import java.util.Map;8import static io.appium.java_client.touch.TapOptions.tapOptions;9public class CalculatorPageObject extends BasePageObject {10 private Query one = new Query(MobileBy.AccessibilityId("1"), driver);11 private Query two = new Query(MobileBy.AccessibilityId("2"), driver);12 private Query three = new Query(MobileBy.AccessibilityId("3"), driver);13 private Query four = new Query(MobileBy.AccessibilityId("4"), driver);14 private Query five = new Query(MobileBy.AccessibilityId("5"), driver);15 private Query six = new Query(MobileBy.AccessibilityId("6"), driver);16 private Query seven = new Query(MobileBy.AccessibilityId("7"), driver);17 private Query eight = new Query(MobileBy.AccessibilityId("8"), driver);18 private Query nine = new Query(MobileBy.AccessibilityId("9"), driver);19 private Query zero = new Query(MobileBy.AccessibilityId("0"), driver);20 private Query addButton = new Query(MobileBy.AccessibilityId("Plus"), driver);21 private Query subtractButton = new Query(MobileBy.AccessibilityId("Minus"), driver);22 private Query equalsButton = new Query(MobileBy.AccessibilityId("Equal"), driver);23 private Query result = new Query(MobileBy.id("com.sec.android.app.popupcalculator:id/txtCalc"), driver);24 private final Map<Character, Query> NUMBERS = Collections.unmodifiableMap(25 new HashMap<Character, Query>() {{26 put('1', one);27 put('2', two);28 put('3', three);29 put('4', four);30 put('5', five);31 put('6', six);32 put('7', seven);33 put('8', eight);34 put('9', nine);35 put('0', zero);36 }});...
LoginPage.java
Source: LoginPage.java
...8import org.testng.Assert;9public class LoginPage extends WebActions {10 public AppiumDriver<?> driver;11 WebDriverWait wait;12 By username_txt = MobileBy.AccessibilityId("test-Username");13 By password_txt = MobileBy.AccessibilityId("test-Password");14 By loginBtn = MobileBy.AccessibilityId("test-LOGIN");15 By productsHeader = MobileBy.iOSNsPredicateString("type == 'XCUIElementTypeStaticText' AND label == 'PRODUCTS'");16 By menu = MobileBy.iOSNsPredicateString("type == 'XCUIElementTypeOther' AND name == 'test-Menu'");17 By menu_header = MobileBy.AccessibilityId("test-ALL ITEMS");18 By logoutBtn = MobileBy.AccessibilityId("test-LOGOUT");19 By login_page = MobileBy.AccessibilityId("Username Password LOGIN");20 By invalidLoginMsg = MobileBy.AccessibilityId("Username and password do not match any user in this service.");21 public LoginPage(AppiumDriver<?> driver) {22 this.driver = driver;23 this.wait = new WebDriverWait(driver, 10);24 }25 public void login(String user_name, String password) {26 driver.findElement(username_txt).sendKeys(user_name);27 driver.findElement(password_txt).sendKeys(password);28 logScreenshot("login");29 driver.findElement(loginBtn).click();30 }31 public void isOnProductsPage() {32 wait.until(ExpectedConditions.presenceOfElementLocated(productsHeader));33 Assert.assertTrue(driver.findElement(productsHeader).isDisplayed());34 logScreenshot("login successful");...
iOSInteractWithKeyboard.java
Source: iOSInteractWithKeyboard.java
...28 .moveTo(PointOption.point(endX, endY))29 .release()30 .perform();31 }32 driver.findElement(MobileBy.AccessibilityId("Text Fields")).click();33 driver.findElement(MobileBy.xpath("//XCUIElementTypeCell [1]/XCUIElementTypeTextField")).click();34 Thread.sleep(3000);35 driver.findElement(MobileBy.AccessibilityId("q")).click();36 driver.findElement(MobileBy.AccessibilityId("w")).click();37 driver.findElement(MobileBy.AccessibilityId("e")).click();38 driver.findElement(MobileBy.AccessibilityId("t")).click();39 Thread.sleep(3000);40 //driver.findElement(MobileBy.AccessibilityId("Done")).click();41 //driver.hideKeyboard();42 }43}...
GesturesSwipe.java
Source: GesturesSwipe.java
...12class GesturesSwipe {13 public static void main(String[] args) throws Exception {14 AppiumDriver driver = CreateDriverSession.initializeDriver("iOS");15 driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);16 By views = MobileBy.AccessibilityId("Views");17 By grid = MobileBy.AccessibilityId("Grid");18 By animation = MobileBy.AccessibilityId("Animation");19 driver.findElement(views).click();20 By steppers = MobileBy.AccessibilityId("Steppers");21 By activityIndicators = MobileBy.AccessibilityId("Activity Indicators");22 Dimension size = driver.manage().window().getSize();23 int startX = size.width / 2;24 int endX = startX;25 int startY = (int) (size.height * 0.8);26 int endY = (int) (size.height * 0.2);27 TouchAction t = new TouchAction(driver);28 t.press(PointOption.point(startX, startY))29 .waitAction(WaitOptions.waitOptions(Duration.ofMillis(2000)))30 .moveTo(PointOption.point(endX, endY))31 .release()32 .perform();33 /* TouchAction t = new TouchAction(driver);34 t.press(ElementOption.element(driver.findElement(steppers)))35 .waitAction(WaitOptions.waitOptions(Duration.ofMillis(2000)))...
SwipeVertically.java
Source: SwipeVertically.java
...14 DriverFactory.startAppiumServer();15 try {16 AppiumDriver<MobileElement> appiumDriver = DriverFactory.getAndroidDriver();17 WebDriverWait wait = new WebDriverWait(appiumDriver, 30L);18 wait.until(ExpectedConditions.elementToBeClickable(MobileBy.AccessibilityId("Forms")));19 MobileElement formLabel = appiumDriver.findElement(MobileBy.AccessibilityId("Forms"));20 formLabel.click();21 wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//android.widget.ScrollView[@content-desc=\"Forms-screen\"]/android.view.ViewGroup/android.view.ViewGroup/android.view.ViewGroup[1]/android.widget.TextView")));22 //Perform Touch actions23 SwipeUtils.swipe(appiumDriver, SwipeType.DOWN);24 formLabel = appiumDriver.findElement(MobileBy.AccessibilityId("Swipe"));25 formLabel.click();26 wait.until(ExpectedConditions.elementToBeClickable(MobileBy.AccessibilityId("Swipe-screen")));27 //Perform Touch actions to find logo28 SwipeUtils.swipeUntilElementDisplay(appiumDriver,MobileBy.AccessibilityId("WebdriverIO logo"), SwipeType.DOWN);29 }finally {30 //Stop appium31 DriverFactory.stopAppiumServer();32 }33 }34}...
BottomNavComponent.java
Source: BottomNavComponent.java
...4import io.appium.java_client.MobileElement;5import org.openqa.selenium.By;6public class BottomNavComponent {7 private final AppiumDriver<MobileElement> appiumDriver;8 private By loginLabelSel = MobileBy.AccessibilityId("Login");9 private By formLabelSel = MobileBy.AccessibilityId("Forms");10 private By swipeLabelSel = MobileBy.AccessibilityId("Swipe");11 public BottomNavComponent(AppiumDriver<MobileElement> appiumDriver) {12 this.appiumDriver = appiumDriver;13 }14 public MobileElement loginLabelElem() {15 return this.appiumDriver.findElement(loginLabelSel);16 }17 public MobileElement formLabelElem() {18 return this.appiumDriver.findElement(formLabelSel);19 }20 public MobileElement swipeLabelElem() {21 return this.appiumDriver.findElement(swipeLabelSel);22 }23 public void clickLoginLabel() {24 loginLabelElem().click();...
AccessibilityId
Using AI Code Generation
1driver.findElement(MobileBy.AccessibilityId("Accessibility")).click();2driver.findElement(MobileBy.AndroidUIAutomator("text(\"Accessibility\")")).click();3driver.findElement(MobileBy.iOSClassChain("**/XCUIElementTypeStaticText[`label == \"Accessibility\"`]")).click();4driver.findElement(MobileBy.iOSNsPredicate("name == \"Accessibility\"")).click();5driver.findElement(MobileBy.iOSUIAutomation(".elements()[\"Accessibility\"]")).click();6driver.findElement(MobileBy.WindowsAutomation("name:Accessibility")).click();7driver.findElement(MobileBy.WindowsUIAutomation("Accessibility")).click();8driver.findElement(MobileBy.className("android.widget.TextView")).click();9driver.findElement(MobileBy.id("io.appium.android.apis:id/accessibility")).click();10driver.findElement(MobileBy.linkText("Accessibility")).click();11driver.findElement(MobileBy.name("Accessibility")).click();12driver.findElement(MobileBy.partialLinkText("Accessibility")).click();13driver.findElement(MobileBy.tagName("Accessibility")).click();14driver.findElement(MobileBy.cssSelector("Accessibility")).click();15driver.findElement(MobileBy.AndroidDataMatcher("Accessibility")).click();
AccessibilityId
Using AI Code Generation
1MobileElement element = driver.findElement(MobileBy.AccessibilityId("Accessibility"));2MobileElement element = driver.findElement(MobileBy.AndroidUIAutomator("UiSelector().text(\"Accessibility\")"));3MobileElement element = driver.findElement(MobileBy.iOSUIAutomation("UiSelector().text(\"Accessibility\")"));4MobileElement element = driver.findElement(MobileBy.image("path/to/image"));5MobileElement element = driver.findElement(MobileBy.text("Accessibility"));6MobileElement element = driver.findElement(MobileBy.UiAutomator("UiSelector().text(\"Accessibility\")"));7MobileElement element = driver.findElement(MobileBy.AndroidDataMatcher("name", "Accessibility"));8MobileElement element = driver.findElement(MobileBy.AndroidViewTag("Accessibility"));9MobileElement element = driver.findElement(MobileBy.AndroidViewMatcher("Accessibility"));10MobileElement element = driver.findElement(MobileBy.iOSNsPredicate("Accessibility"));11MobileElement element = driver.findElement(MobileBy.iOSClassChain("Accessibility"));12MobileElement element = driver.findElement(MobileBy.iOSUIAutomation("Accessibility"));13MobileElement element = driver.findElement(MobileBy.WindowsAutomation("Accessibility"));14MobileElement element = driver.findElement(MobileBy.WindowsSelector("Accessibility"));
AccessibilityId
Using AI Code Generation
1MobileElement el = (MobileElement) driver.findElement(MobileBy.AccessibilityId("Accessibility"));2MobileElement el = (MobileElement) driver.findElement(MobileBy.AndroidUIAutomator("UiSelector().text(\"Accessibility\")"));3MobileElement el = (MobileElement) driver.findElement(MobileBy.IOSUIAutomation("UiSelector().text(\"Accessibility\")"));4MobileElement el = (MobileElement) driver.findElement(MobileBy.IosNsPredicate("UiSelector().text(\"Accessibility\")"));5MobileElement el = (MobileElement) driver.findElement(MobileBy.IosClassChain("UiSelector().text(\"Accessibility\")"));6MobileElement el = (MobileElement) driver.findElement(MobileBy.WindowsAutomation("UiSelector().text(\"Accessibility\")"));7MobileElement el = (MobileElement) driver.findElement(MobileBy.Image("UiSelector().text(\"Accessibility\")"));8MobileElement el = (MobileElement) driver.findElement(MobileBy.Custom("UiSelector().text(\"Accessibility\")"));9MobileElement el = (MobileElement) driver.findElement(AndroidBy.AccessibilityId("Accessibility"));10MobileElement el = (MobileElement) driver.findElement(AndroidBy.AndroidUIAutomator("UiSelector().text(\"Accessibility\")"));11MobileElement el = (MobileElement) driver.findElement(IOSBy.AccessibilityId("Accessibility"));12MobileElement el = (MobileElement) driver.findElement(IOSBy.IOSUIAutomation("UiSelector().text(\"Accessibility\")"));
AccessibilityId
Using AI Code Generation
1MobileElement element=driver.findElement(MobileBy.AccessibilityId("Accessibility"));2MobileElement element=driver.findElement(MobileBy.AndroidUIAutomator("UiSelector().text(\"Accessibility\")"));3MobileElement element=driver.findElement(MobileBy.iOSUIAutomation(".elements().withName(\"Accessibility\")"));4driver.findElementByAccessibilityId("Accessibility").click();5driver.findElementByAndroidUIAutomator("UiSelector().text(\"Accessibility\")").click();6driver.findElementByIosUIAutomation(".elements().withName(\"Accessibility\")").click();7element = driver.find_element :android_uiautomator, 'UiSelector().text(\"Accessibility\")'8element = driver.find_element :ios_uiautomation, '.elements().withName(\"Accessibility\")'9element = driver.find_element_by_accessibility_id("Accessibility")10element = driver.find_element_by_android_uiautomator("UiSelector().text(\"Accessibility\")")11element = driver.find_element_by_ios_uiautomation(".elements().withName(\"Accessibility\")")12$element = $driver->findElement(WebDriverBy::accessibilityId("Accessibility"));13$element = $driver->findElement(WebDriverBy::androidUIAutomator("UiSelector().text(\"Accessibility\")"));14$element = $driver->findElement(WebDriverBy::iOSUIAutomation(".elements().withName
AccessibilityId
Using AI Code Generation
1MobileElement element = driver.findElement(MobileBy.AccessibilityId("Accessibility"));2element.click();3MobileElement element = driver.findElement(MobileBy.AndroidUIAutomator("UiSelector().description(\"Accessibility\")"));4element.click();5MobileElement element = driver.findElement(MobileBy.AndroidViewTag("tag"));6element.click();7MobileElement element = driver.findElement(MobileBy.AndroidDataMatcher("data"));8element.click();9MobileElement element = driver.findElement(MobileBy.AndroidClass("class"));10element.click();11MobileElement element = driver.findElement(MobileBy.AndroidUIAutomator("UiSelector().description(\"Accessibility\")"));12element.click();13MobileElement element = driver.findElement(MobileBy.AndroidUIAutomator("UiSelector().description(\"Accessibility\")"));14element.click();15MobileElement element = driver.findElement(MobileBy.AndroidUIAutomator("UiSelector().description(\"Accessibility\")"));16element.click();17MobileElement element = driver.findElement(MobileBy.AndroidUIAutomator("UiSelector().description(\"Accessibility\")"));18element.click();19MobileElement element = driver.findElement(MobileBy.AndroidUIAutomator("UiSelector().description(\"Accessibility\")"));20element.click();21MobileElement element = driver.findElement(MobileBy.AndroidUIAutomator("UiSelector().description(\"Accessibility\")"));22element.click();
Android emulator not started. always throwing error for browserName while not include in caps
Appium test login in browser and back to app
How to automate Home,back,up,down,Menu button at bottom of Android phone using appium java client 6.1.0?
Appium error with testdroid: java.lang.NoClassDefFoundError: org/openqa/selenium/internal/HasIdentity
Chrome browser fails to launch in Appium using Java
Is there anyway to mix ios automation and web automation in a single script using selenium
Appium Android How to tap using the TEXT value
appium : webview : selenium : How to automate touchend event on a div?
Appium: autoAcceptAlert doesn't work to allow access to all photos on IOS 14
How to disable save password on ChromeDriver use Appium and AndroidStudio
Here you can find the platform configurator. Sauce Labs supply it to help with getting the right caps which is what you need. Based on your configuration, the correct caps will look like this for web testing:
DesiredCapabilities caps = DesiredCapabilities.android();
caps.setCapability("appiumVersion", "1.6.4");
caps.setCapability("deviceName","Android Emulator");
caps.setCapability("deviceOrientation", "portrait");
caps.setCapability("browserName", "Browser");
caps.setCapability("platformVersion", "4.4");
caps.setCapability("platformName","Android");
for Hybrid or App testing, the browserName
will be set as:
caps.setCapability("browserName", "");
Check out the latest blogs from LambdaTest on this topic:
Building a website is all about keeping the user experience in mind. Ultimately, it’s about providing visitors with a mind-blowing experience so they’ll keep coming back. One way to ensure visitors have a great time on your site is to add some eye-catching text or image animations.
Sometimes, in our test code, we need to handle actions that apparently could not be done automatically. For example, some mouse actions such as context click, double click, drag and drop, mouse movements, and some special key down and key up actions. These specific actions could be crucial depending on the project context.
People love to watch, read and interact with quality content — especially video content. Whether it is sports, news, TV shows, or videos captured on smartphones, people crave digital content. The emergence of OTT platforms has already shaped the way people consume content. Viewers can now enjoy their favorite shows whenever they want rather than at pre-set times. Thus, the OTT platform’s concept of viewing anything, anytime, anywhere has hit the right chord.
In an ideal world, you can test your web application in the same test environment and return the same results every time. The reality can be difficult sometimes when you have flaky tests, which may be due to the complexity of the web elements you are trying to perform an action on your test case.
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!