Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

The future of mobile automation testing, appium steals it

741 views

Published on

Appium

Published in: Technology
  • Be the first to comment

The future of mobile automation testing, appium steals it

  1. 1. The Future of Mobile Automation Testing, Appium steals it!! Srinivasan Sekar Appium Member
  2. 2. Agenda • Problem Statement • Solutions Available • Best Solution’s adopted by Appium • Q & A
  3. 3. Problem Statement • Inspector • Locator Strategies • UIAutomation Support • UIAutomator2 Framework • Handling Multiple Sessions at a time • Wearables/tvOS Support
  4. 4. Inspector • Calabash IRB • Works well with applications developed on different technology • To find right match, user have to do lot of hit and trials in irb • Identifies the elements based on visibility • Doesn’t have any control over other apps installed in device • Not user friendly • Appium Inspector • Not Actively maintained by Appium team • Doesn’t have any control over other apps installed in device • At times appium-dot-app crashes abruptly during inspection • Selendroid Inspector • Doesn’t have any control over other apps installed in device • Doesn’t render UIElements in screen for certain applications or applications developed on certain technologies
  5. 5. Solution • iOS - Facebook’s WebDriverAgent Inspector: • Developed in node.js • WDA is an iOS app installed in Simulator or Device which takes best control of apps on device and Rendering is based on visibility of elements • Android – Google’s uiautomatorviewer • Works absolutely fine for android apps • Doesn’t support Multi-Window searches for API level 21+ and prior to API level 21 we can access active window • https://code.google.com/p/android/issues/detail?
  6. 6. UIAutomation support Problem Statement Apple no more support’s UIAutomation but does XCUITest to automate iOS applications. Solutions
  7. 7. UIAutomator2 Framework UIAutomator2 Backward Compatibility Performance Toast Messages Push Notifications
  8. 8. Handling Multiple Sessions Problem Statement • Parallel Execution of tests across multiple iOS real devices and simulators simultaneously Solution’s Available • FB’s Simulator Control controls iOS Simulators by manipulating the system. • Appium supports multiple sessions on real devices. • Appium : simctl -> fbsimctl
  9. 9. Wearables/tvOS Support • Testing Apps in Android wearables are feasible with many existing frameworks already • iOS Apple Watch and tvOS Support is a concern for many already • As said earlier XCUITestDriver supports tvOS through WDA. Expect a complete support in near future. • Appium Driver is designed in such a way that it can be easily adopted and write wrapper on top of existing Mobile Json Wire methods to support any apps. • E.g: https://github.com/YOU-i-Labs/appium-youiengine-driver
  10. 10. Sources • DroidDriver - https://android.googlesource.com/platform/external/droiddriver • DroidDriver - https://github.com/appium/droiddriver • UIAutomator v2- https://android.googlesource.com/platform/frameworks/uiautomator/+/master • Facebook’s WDA – https://github.com/facebook/FBSimulatorControl • Facebook’s fbsimtcl - https://github.com/facebook/FBSimulatorControl • Google EarlGrey - https://github.com/google/EarlGrey • https://github.com/appium/appium-xcuitest-driver • https://github.com/appium/appium-uiautomator2-driver • https://github.com/appium/appium-uiautomator2-server • https://github.com/appium/appium/issues/4369 • https://code.google.com/p/android/issues/detail?id=207569 • https://github.com/appium/appium/issues/4869 • https://github.com/appium/appium/issues/4858

×