11import java .net .URL ;
22import java .util .List ;
33import java .net .MalformedURLException ;
4+
5+ import io .appium .java_client .MobileBy ;
46import io .appium .java_client .android .AndroidDriver ;
7+ import io .appium .java_client .android .AndroidElement ;
58
6- import org .openqa .selenium .By ;
7- import org .openqa .selenium .WebElement ;
89import org .openqa .selenium .support .ui .ExpectedConditions ;
910import org .openqa .selenium .support .ui .WebDriverWait ;
1011import org .openqa .selenium .remote .DesiredCapabilities ;
1112
1213public class BrowserStackAndroid {
13-
14+
1415 public static String accessKey = "BROWSERSTACK_USERNAME" ;
1516 public static String userName = "BROWSERSTACK_ACCESS_KEY" ;
1617
@@ -21,17 +22,17 @@ public static void main(String args[]) throws MalformedURLException, Interrupted
2122 capabilities .setCapability ("device" , "Samsung Galaxy S7" );
2223 capabilities .setCapability ("app" , "bs://<hashed app-id>" );
2324
24- AndroidDriver driver = new AndroidDriver (new URL ("https://" +userName +":" +accessKey +"@hub.browserstack.com/wd/hub" ), capabilities );
25+ AndroidDriver driver = new AndroidDriver < AndroidElement > (new URL ("https://" +userName +":" +accessKey +"@hub.browserstack.com/wd/hub" ), capabilities );
2526
26- WebElement searchElement = new WebDriverWait (driver , 30 ).until (
27- ExpectedConditions .elementToBeClickable (By . id ("Search Wikipedia" )));
27+ AndroidElement searchElement = ( AndroidElement ) new WebDriverWait (driver , 30 ).until (
28+ ExpectedConditions .elementToBeClickable (MobileBy . AccessibilityId ("Search Wikipedia" )));
2829 searchElement .click ();
29- WebElement insertTextElement = new WebDriverWait (driver , 30 ).until (
30- ExpectedConditions .elementToBeClickable (By .id ("org.wikipedia.alpha:id/search_src_text" )));
30+ AndroidElement insertTextElement = ( AndroidElement ) new WebDriverWait (driver , 30 ).until (
31+ ExpectedConditions .elementToBeClickable (MobileBy .id ("org.wikipedia.alpha:id/search_src_text" )));
3132 insertTextElement .sendKeys ("BrowserStack" );
3233 Thread .sleep (5000 );
3334
34- List <WebElement > allProductsName = driver .findElements ( By . className ( "android.widget.TextView" ) );
35+ List <AndroidElement > allProductsName = driver .findElementsByClassName ( "android.widget.TextView" );
3536 assert (allProductsName .size () > 0 );
3637
3738 driver .quit ();
0 commit comments