Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Four time savers when you start test automation of mobile applications

uaMobiTech
November 14, 2015

Four time savers when you start test automation of mobile applications

By Mykhaylo Laptyev - https://ua.linkedin.com/in/mykhaylo-laptyev-81252122
You are thinking about starting test automation of mobile applications and don't know what are first steps. You know how to start testing process, would like to avoid bunch of common mistakes and save time for coding. You already have test automation in place and have questions regarding testing process, environment setup, mobile devices under test, tools, etc. I'll try to help you with all above during my presentation and Q&A section.

uaMobiTech

November 14, 2015
Tweet

More Decks by uaMobiTech

Other Decks in Technology

Transcript

  1. Agenda • Test documentation analysis • Strategy for selecting devices

    under test • Environment setup • Miscellaneous
  2. Test documentation analysis • Run all test cases manually •

    Highlight repetitive blocks • Implement one method for all blocks • Code understanding, maintenance and refactoring
  3. Semi-automated test cases • Tests related to hardware • Tests

    that should be run only once • No 100% trust in automation
  4. Real devices Pros • Hardware and advanced UI tests •

    High performance • Environment like customers have Cons • Cost • Provisioning for iOS devices • Maintenance and setup
  5. Emulators Pros • No provisioning (*.app for iOS only) •

    Parallel testing • Cost efficient • Easy to maintain Cons • Different with real devices behaviour • Not all features can be tested (accelerometer, push notifications, etc.) • Emulations of user actions (three fingers, multi-touch, etc.)
  6. Cloud-based real devices Pros • All modern devices with different

    operating systems • No need to maintain Cons • Cost • Performance • Poor support
  7. Environment setup • Java • IDE (IntelliJ IDEA) • Android

    SDK • ADB • Xcode • Xcode command line • Appium (Appium Doctor)/Calabash/Robotium/Espresso
  8. Appium • iOS and Android • One test for both

    platforms • Not language dependent • No need to recompile app • Build on top of Selenium WebDriver • Web, Native and Hybrid apps • Good support • Has some bugs ☺
  9. Appium for iOS Mobile applications • Device under test •

    *.app file (Simulator) Web applications • Device under test (UDID, Web inspector is turned on) • Xcode • Appium • Apple development account • Command line tools • Safari Launcher App • iOS Webkit Debug Proxy app
  10. Appium disadvantages • Long time to configure • Many unexpected

    errors (Appium Version 1.4.8) • No image comparison • Appium is slow with xPath (UIAutomator for Android and UIAutomation/AccessibilityId for iOS ) • Typing speed in emulator is slow for sendKeys (setValue)
  11. Miscellaneous • GitHub for code management • Separate branches in

    GitHub • Code review on daily/pull request basis • Slack for communication and notifications
  12. Useful links • Genymotion • TestDroid • BrowserStack • Setting

    up Appium for Android • Android and iOS automation using Appium • Slack