Skip to content

Commit 1924be4

Browse files
Demonstration how to use AndroidElement/IOSElement
...with generic AppiumDriver
1 parent 95ff53a commit 1924be4

2 files changed

Lines changed: 8 additions & 6 deletions

File tree

sample-code/examples/java/junit/src/test/java/com/saucelabs/appium/AndroidContactsTest.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import io.appium.java_client.AppiumDriver;
44
import io.appium.java_client.android.AndroidDriver;
5+
import io.appium.java_client.android.AndroidElement;
56

67
import java.io.File;
78
import java.net.URL;
@@ -15,7 +16,7 @@
1516
import org.openqa.selenium.remote.DesiredCapabilities;
1617

1718
public class AndroidContactsTest {
18-
private AppiumDriver<WebElement> driver;
19+
private AppiumDriver<AndroidElement> driver;
1920

2021
@Before
2122
public void setUp() throws Exception {
@@ -41,7 +42,7 @@ public void tearDown() throws Exception {
4142
public void addContact(){
4243
WebElement el = driver.findElement(By.name("Add Contact"));
4344
el.click();
44-
List<WebElement> textFieldsList = driver.findElementsByClassName("android.widget.EditText");
45+
List<AndroidElement> textFieldsList = driver.findElementsByClassName("android.widget.EditText");
4546
textFieldsList.get(0).sendKeys("Some Name");
4647
textFieldsList.get(2).sendKeys("[email protected]");
4748
driver.swipe(100, 500, 100, 100, 2);

sample-code/examples/java/junit/src/test/java/com/saucelabs/appium/UICatalogTest.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
import io.appium.java_client.AppiumDriver;
99
import io.appium.java_client.MobileElement;
1010
import io.appium.java_client.ios.IOSDriver;
11+
import io.appium.java_client.ios.IOSElement;
1112

1213
import java.io.File;
1314
import java.net.URL;
@@ -46,7 +47,7 @@
4647
@SuppressWarnings("deprecation")
4748
public class UICatalogTest {
4849

49-
private AppiumDriver<MobileElement> driver;
50+
private AppiumDriver<IOSElement> driver;
5051

5152
private WebElement row;
5253

@@ -60,7 +61,7 @@ public void setUp() throws Exception {
6061
capabilities.setCapability("platformVersion", "8.1");
6162
capabilities.setCapability("deviceName", "iPhone 6");
6263
capabilities.setCapability("app", app.getAbsolutePath());
63-
driver = new IOSDriver<MobileElement>(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
64+
driver = new IOSDriver<>(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
6465
}
6566

6667
@After
@@ -85,7 +86,7 @@ private Point getCenter(WebElement element) {
8586
@Test
8687
public void testFindElement() throws Exception {
8788
//first view in UICatalog is a table
88-
MobileElement table = (MobileElement)driver.findElementByClassName("UIATableView");
89+
IOSElement table = driver.findElementByClassName("UIATableView");
8990
assertNotNull(table);
9091
//is number of cells/rows inside table correct
9192
List<MobileElement> rows = table.findElementsByClassName("UIATableCell");
@@ -156,7 +157,7 @@ public void testAlertInteraction() {
156157
openMenuPosition(10);
157158

158159
//trigger modal alert with cancel & ok buttons
159-
List<MobileElement> triggerOkCancel = driver.findElementsByAccessibilityId("Show OK-Cancel");
160+
List<IOSElement> triggerOkCancel = driver.findElementsByAccessibilityId("Show OK-Cancel");
160161
triggerOkCancel.get(1).click();
161162
Alert alert = driver.switchTo().alert();
162163
//check if title of alert is correct

0 commit comments

Comments
 (0)