Skip to content

Commit 3e7d33b

Browse files
committed
Added support for java-client 8.0.0
1 parent 186d775 commit 3e7d33b

4 files changed

Lines changed: 50 additions & 41 deletions

File tree

src/test/java/android/BrowserStackSample.java

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,15 @@
55
import java.util.function.Function;
66
import java.net.MalformedURLException;
77

8-
import io.appium.java_client.MobileBy;
9-
import io.appium.java_client.android.AndroidDriver;
10-
import io.appium.java_client.android.AndroidElement;
11-
128
import org.openqa.selenium.support.ui.ExpectedConditions;
139
import org.openqa.selenium.support.ui.WebDriverWait;
14-
import org.openqa.selenium.WebDriver;
1510
import org.openqa.selenium.remote.DesiredCapabilities;
1611

12+
import io.appium.java_client.AppiumBy;
13+
import org.openqa.selenium.WebDriver;
14+
import org.openqa.selenium.WebElement;
15+
import org.openqa.selenium.remote.RemoteWebDriver;
16+
1717

1818
public class BrowserStackSample {
1919

@@ -40,23 +40,23 @@ public static void main(String[] args) throws MalformedURLException, Interrupted
4040

4141
// Initialise the remote Webdriver using BrowserStack remote URL
4242
// and desired capabilities defined above
43-
AndroidDriver<AndroidElement> driver = new AndroidDriver<AndroidElement>(
43+
RemoteWebDriver driver = new RemoteWebDriver(
4444
new URL("http://hub.browserstack.com/wd/hub"), caps);
45-
45+
4646

4747
// Test case for the BrowserStack sample Android app.
4848
// If you have uploaded your app, update the test case here.
49-
AndroidElement searchElement = (AndroidElement) new WebDriverWait(driver, 30).until(
49+
WebElement searchElement = (WebElement) new WebDriverWait(driver, 30).until(
5050
ExpectedConditions.elementToBeClickable(
51-
MobileBy.AccessibilityId("Search Wikipedia")));
51+
AppiumBy.accessibilityId("Search Wikipedia")));
5252
searchElement.click();
53-
AndroidElement insertTextElement = (AndroidElement) new WebDriverWait(driver, 30).until(
53+
WebElement insertTextElement = (WebElement) new WebDriverWait(driver, 30).until(
5454
ExpectedConditions.elementToBeClickable(
55-
MobileBy.id("org.wikipedia.alpha:id/search_src_text")));
55+
AppiumBy.id("org.wikipedia.alpha:id/search_src_text")));
5656
insertTextElement.sendKeys("BrowserStack");
5757
Thread.sleep(5000);
58-
List<AndroidElement> allProductsName = driver.findElementsByClassName(
59-
"android.widget.TextView");
58+
List<WebElement> allProductsName = driver.findElements(AppiumBy.className("android.widget.TextView"));
59+
6060
assert(allProductsName.size() > 0);
6161

6262

src/test/java/android/BrowserStackSampleLocal.java

Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,13 @@
22

33
import com.browserstack.local.Local;
44
import java.net.URL; import java.util.*;
5-
import io.appium.java_client.MobileBy; import io.appium.java_client.android.*;
6-
import org.openqa.selenium.support.ui.*;import org.openqa.selenium.remote.*;
5+
import io.appium.java_client.android.*;
6+
import org.openqa.selenium.support.ui.*;
7+
import org.openqa.selenium.remote.*;
8+
import org.openqa.selenium.By;
9+
import org.openqa.selenium.WebDriver;
10+
import org.openqa.selenium.WebElement;
11+
import org.openqa.selenium.remote.RemoteWebDriver;
712

813
public class BrowserStackSampleLocal {
914

@@ -51,21 +56,20 @@ public static void main(String[] args) throws Exception {
5156

5257
// Initialise the remote Webdriver using BrowserStack remote URL
5358
// and desired capabilities defined above
54-
AndroidDriver<AndroidElement> driver = new AndroidDriver<AndroidElement>(
55-
new URL("http://hub.browserstack.com/wd/hub"), capabilities);
59+
RemoteWebDriver driver = new RemoteWebDriver(new URL("http://hub.browserstack.com/wd/hub"), capabilities);
5660

5761
// Test case for the BrowserStack sample Android Local app.
5862
// If you have uploaded your app, update the test case here.
59-
AndroidElement searchElement = (AndroidElement) new WebDriverWait(driver, 30).until(
60-
ExpectedConditions.elementToBeClickable(MobileBy.id("com.example.android.basicnetworking:id/test_action")));
63+
WebElement searchElement = new WebDriverWait(driver, 30).until(
64+
ExpectedConditions.elementToBeClickable(By.id("com.example.android.basicnetworking:id/test_action")));
6165
searchElement.click();
62-
AndroidElement insertTextElement = (AndroidElement) new WebDriverWait(driver, 30).until(
63-
ExpectedConditions.elementToBeClickable(MobileBy.className("android.widget.TextView")));
66+
WebElement insertTextElement = (WebElement) new WebDriverWait(driver, 30).until(
67+
ExpectedConditions.elementToBeClickable(By.className("android.widget.TextView")));
6468

65-
AndroidElement testElement = null;
66-
List<AndroidElement> allTextViewElements = driver.findElementsByClassName("android.widget.TextView");
69+
WebElement testElement = null;
70+
List<WebElement> allTextViewElements = driver.findElements(By.className("android.widget.TextView"));
6771
Thread.sleep(10);
68-
for(AndroidElement textElement : allTextViewElements) {
72+
for(WebElement textElement : allTextViewElements) {
6973
if(textElement.getText().contains("The active connection is")) {
7074
testElement = textElement;
7175
}

src/test/java/ios/BrowserStackSample.java

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,10 @@
88
import org.openqa.selenium.remote.DesiredCapabilities;
99
import org.openqa.selenium.support.ui.ExpectedConditions;
1010

11-
import io.appium.java_client.MobileBy;
12-
import io.appium.java_client.ios.IOSDriver;
13-
import io.appium.java_client.ios.IOSElement;
11+
import io.appium.java_client.AppiumBy;
12+
import org.openqa.selenium.WebDriver;
13+
import org.openqa.selenium.WebElement;
14+
import org.openqa.selenium.remote.RemoteWebDriver;
1415

1516
public class BrowserStackSample {
1617

@@ -36,21 +37,21 @@ public static void main(String[] args) throws MalformedURLException, Interrupted
3637

3738
// Initialise the remote Webdriver using BrowserStack remote URL
3839
// and desired capabilities defined above
39-
IOSDriver<IOSElement> driver = new IOSDriver<IOSElement>(
40+
RemoteWebDriver driver = new RemoteWebDriver(
4041
new URL("http://hub-cloud.browserstack.com/wd/hub"), caps);
4142

4243

4344
// Test case for the BrowserStack sample iOS app.
4445
// If you have uploaded your app, update the test case here.
45-
IOSElement textButton = (IOSElement) new WebDriverWait(driver, 30).until(
46-
ExpectedConditions.elementToBeClickable(MobileBy.AccessibilityId("Text Button")));
46+
WebElement textButton = (WebElement) new WebDriverWait(driver, 30).until(
47+
ExpectedConditions.elementToBeClickable(AppiumBy.accessibilityId("Text Button")));
4748
textButton.click();
48-
IOSElement textInput = (IOSElement) new WebDriverWait(driver, 30).until(
49-
ExpectedConditions.elementToBeClickable(MobileBy.AccessibilityId("Text Input")));
49+
WebElement textInput = (WebElement) new WebDriverWait(driver, 30).until(
50+
ExpectedConditions.elementToBeClickable(AppiumBy.accessibilityId("Text Input")));
5051
textInput.sendKeys("hello@browserstack.com");
5152
Thread.sleep(5000);
52-
IOSElement textOutput = (IOSElement) new WebDriverWait(driver, 30).until(
53-
ExpectedConditions.elementToBeClickable(MobileBy.AccessibilityId("Text Output")));
53+
WebElement textOutput = (WebElement) new WebDriverWait(driver, 30).until(
54+
ExpectedConditions.elementToBeClickable(AppiumBy.accessibilityId("Text Output")));
5455
if(textOutput != null && textOutput.getText().equals("hello@browserstack.com"))
5556
assert(true);
5657
else

src/test/java/ios/BrowserStackSampleLocal.java

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,13 @@
33
import com.browserstack.local.Local;
44
import java.net.URL; import java.io.File; import java.util.*;
55
import org.apache.commons.io.FileUtils;
6-
import io.appium.java_client.MobileBy; import io.appium.java_client.ios.*;
6+
import io.appium.java_client.ios.*;
77
import org.openqa.selenium.*;
88
import org.openqa.selenium.support.ui.*;import org.openqa.selenium.remote.*;
9+
import org.openqa.selenium.By;
10+
import org.openqa.selenium.WebDriver;
11+
import org.openqa.selenium.WebElement;
12+
import org.openqa.selenium.remote.RemoteWebDriver;
913

1014
public class BrowserStackSampleLocal {
1115

@@ -53,24 +57,24 @@ public static void main(String[] args) throws Exception {
5357

5458
// Initialise the remote Webdriver using BrowserStack remote URL
5559
// and desired capabilities defined above
56-
IOSDriver<IOSElement> driver = new IOSDriver<IOSElement>(
60+
RemoteWebDriver driver = new RemoteWebDriver(
5761
new URL("http://hub.browserstack.com/wd/hub"), capabilities);
5862

5963
// Test case for the BrowserStack sample iOS Local app.
6064
// If you have uploaded your app, update the test case here.
61-
IOSElement testButton = (IOSElement) new WebDriverWait(driver, 30).until(
62-
ExpectedConditions.elementToBeClickable(MobileBy.AccessibilityId("TestBrowserStackLocal")));
65+
WebElement testButton = (WebElement) new WebDriverWait(driver, 30).until(
66+
ExpectedConditions.elementToBeClickable(By.xpath("//*[@content-desc='TestBrowserStackLocal']")));
6367
testButton.click();
64-
68+
6569
WebDriverWait wait = new WebDriverWait(driver, 30);
6670
wait.until(new ExpectedCondition<Boolean>() {
6771
@Override
6872
public Boolean apply(WebDriver d) {
69-
String result = d.findElement(MobileBy.AccessibilityId("ResultBrowserStackLocal")).getAttribute("value");
73+
String result = d.findElement(By.xpath("//*[@content-desc='ResultBrowserStackLocal']")).getAttribute("value");
7074
return result != null && result.length() > 0;
7175
}
7276
});
73-
IOSElement resultElement = (IOSElement) driver.findElement(MobileBy.AccessibilityId("ResultBrowserStackLocal"));
77+
WebElement resultElement = (WebElement) driver.findElement(By.xpath("//*[@content-desc='ResultBrowserStackLocal']"));
7478

7579
String resultString = resultElement.getText().toLowerCase();
7680
System.out.println(resultString);

0 commit comments

Comments
 (0)