11
Gil Sheps It’s your time to ask questions

It’s your time to ask questions

Embed Size (px)

Citation preview

Page 1: It’s your time to ask questions

Gil Sheps

It’s your time to ask questions

Page 2: It’s your time to ask questions

AgendaAppium server capabilities/ server flags

Real device vs. EmulatorsLocal server vs. Third partyTest two different apps in the same test

Test native app and browser in one test

Page 3: It’s your time to ask questions

Appium server flags --session-overide --log-level --nodeconfig --avd --show-ios-log

https://github.com/appium/appium/blob/master/docs/en/writing-running-appium/server-args.md

Page 4: It’s your time to ask questions

Appium server capabilities

final DesiredCapabilities capabilities = new DesiredCapabilities();final File appDir = new File(File.separator + "mnt" + File.separator + "InnerActive" + File.separator + "DeviceConfig" + File.separator);final File app = new File(appDir, "6.3.0.apk");capabilities.setCapability("deviceName", "Android");capabilities.setCapability("deviceType", "phone");capabilities.setCapability("platformName", "Android");capabilities.setCapability("platformVersion", "5.1");capabilities.setCapability("app", app.getAbsolutePath());capabilities.setCapability("appPackage","com.example.mymeetupexapmple");capabilities.setCapability("appActivity", ".MainActivity");capabilities.setCapability("noReset", true);capabilities.setCapability("fullReset", false);

https://github.com/appium/appium/blob/master/docs/en/writing-running-appium/caps.md

Page 5: It’s your time to ask questions

Real device vs. Emulators

Local server vs. Third Party

?

Page 6: It’s your time to ask questions

Test hybrid app and browser

@Testpublic void testNativeAndBrowser() { WebDriverWait uiWait = new WebDriverWait(driver, 180); driver.findElement(By.id("btn")).click(); uiWait.until(ExpectedConditions.presenceOfElementLocated(By.id("txt"))); ((AndroidDriver) driver).pressKeyCode(AndroidKeyCode.HOME); waitFor3Sec(); driver.findElement(By.id("Apps")).click(); driver.findElement(By.id("Browser")).click(); waitFor3Sec(); List<WebElement> elements = driver.findElements(By.className("android.widget.EditText")); elements.get(0).sendKeys("https://www.meetup.com/Appium-Israel/events/233798589/"); ((AndroidDriver) driver).pressKeyCode(AndroidKeyCode.ENTER); uiWait.until(ExpectedConditions.presenceOfElementLocated(By.id("Download"))); waitFor3Sec(); ((AndroidDriver) driver).pressKeyCode(AndroidKeyCode.KEYCODE_APP_SWITCH); uiWait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//android.widget.TextView[@text='CI Sample']"))); driver.findElement(By.xpath("//android.widget.TextView[@text='MyMeetupExpample']")).click(); uiWait.until(ExpectedConditions.visibilityOfElementLocated(By.id("txt")));}

Page 7: It’s your time to ask questions

Test two apps@Testpublic void testSecondApp() { WebDriverWait uiWait = new WebDriverWait(driver, 180); driver.findElement(By.id("btn")).click(); uiWait.until(ExpectedConditions.presenceOfElementLocated(By.id("txt"))); ((AndroidDriver)driver).startActivity("com.mtvn.mtvPrimeAndroid","com.vmn.android.me.MainActivity"); uiWait.until(ExpectedConditions.visibilityOfElementLocated(By.id("com.mtvn.mtvPrimeAndroid:id/menu_search"))); driver.findElement(By.id("com.mtvn.mtvPrimeAndroid:id/menu_search")).click(); driver.findElement(By.id("com.mtvn.mtvPrimeAndroid:id/search_query")).sendKeys("hello"); waitFor3Sec(); ((AndroidDriver)driver).pressKeyCode(AndroidKeyCode.KEYCODE_APP_SWITCH); uiWait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//android.widget.TextView[@text='CI Sample']"))); driver.findElement(By.xpath("//android.widget.TextView[@text='MyMeetupExpample']")).click(); uiWait.until(ExpectedConditions.visibilityOfElementLocated(By.id("txt")));}

Page 8: It’s your time to ask questions

Test hybrid app and calculator@Testpublic void calculateTwoNumbers() { if (driver.findElement(By.id("btn")).isDisplayed()) { waitFor3Sec(); ((AndroidDriver) driver).pressKeyCode(AndroidKeyCode.HOME); driver.findElement(By.id("Apps")).click(); driver.findElement(By.id("Calculator")).click(); waitFor3Sec(); driver.findElement(By.xpath("//android.widget.Button[@text='3']")).click(); driver.findElement(By.id("plus")).click(); driver.findElement(By.xpath("//android.widget.Button[@text='2']")).click(); driver.findElement(By.id("equals")).click(); waitFor3Sec(); Assert.assertTrue(driver.findElement(By.xpath("//android.widget.EditText[@text='5']")).isDisplayed()); }}

Page 9: It’s your time to ask questions
Page 10: It’s your time to ask questions
Page 11: It’s your time to ask questions

THANK YOU

GIL SHEPSAutomation Developer [email protected]

https://www.linkedin.com/in/gil-sheps