Introduction to Mobile applications testing (english)
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Introduction to Mobile applications testing (english)

on

  • 239 views

English version of my slides for Mobile Testing report (http://www.youtube.com/watch?v=pdWYmxbTgYw - video is russian) ...

English version of my slides for Mobile Testing report (http://www.youtube.com/watch?v=pdWYmxbTgYw - video is russian)

Link on iOS specifications map: https://www.dropbox.com/s/40eb09lvlsn8flm/ios_testing.png

Statistics

Views

Total Views
239
Views on SlideShare
239
Embed Views
0

Actions

Likes
0
Downloads
19
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Introduction to Mobile applications testing (english) Presentation Transcript

  • 1. Testing of iOS and Android applications Practical guide
  • 2. Who about what Oleg Nikiforov in • Features of mobile apps testing • Preparation for testing process • Types of mobile testing • Information used for testing • Useful tools Android apps iOS apps http://stanfy.com UX/UI Design
  • 3. Features of mobile apps testing • Form factors • Gestures • Network connection types • Social networks integration • Achievements • Push notifications • Media content • Usage of locale settings • Focus on visual components
  • 4. Form factors Smartphone: • Landscape • Portrait Tablet: • 10 inch • 7 inch Different interface, size of elements, usability of UI components
  • 5. Gestures • Standard actions, known by users of mobile apps • Custom actions bound to standard gestures • Custom gestures • Several swipes in different directions on one screen (mostly for iOS)
  • 6. Network connection types 3G • Switching between 3G and WiFi • Size of requests/responses • Upload/download - pause, cancel • Time outs • Loss of connection WiFiEdge
  • 7. Social networks integration • Authorization via social networks • Share • Post messages: images, links • Comments • Login/logout - app/browser/device settings (iOS)
  • 8. Achievements • Related to time(e.g. “Using app for 2 weeks”) • Related to certain actions – should trigger correctly • Share achievements
  • 9. Push notifications • Receiving • Open corresponding object • Errors handling (e.g. object corresponding to received notification don’t exist any more, empty notification, etc.)
  • 10. Media content Interaction with media content (photo, video, sound) and external hardware: • Usage of photos from library/camera, usage of panoramas (memory issues) • Usage of microphone (including external hardware) • Audio/video playback (pause, handling of incoming/outgoing calls, messages).
  • 11. Link to time/localization/region: • Application language depending on device settings • Time depending on time zone • Received from server content’s language depending on device settings • Date/time format depending on device settings • Weight/volume/temperature measures depending on local settings Usage of locale settings
  • 12. Focus on visual components • Button size depending on app language • Fonts • Blurry images • App resources should correspond to screen resolution • Animations
  • 13. Preparation for testing process • Investigation of requirements, prototypes, mock-ups - main point – to understand application’s flow • Investigation of API documentation • Creating API tests • Creating application’s mind maps
  • 14. Types of mobile testing • Manual • Automated ui: o Calabash o Frank o Robotium o UI Automation o Appium • Automated API: o SoapUI o LoadUI
  • 15. Information used for testing • Use cases which correspond to tested application 30% - 50% • Specifications common for certain OS - iOS/Android 10% - 20% • Common cases - use cases which are common for certain type of applications, or for components inside applications (list view, scroll view, alerts, etc.) 5% - 15% • Testing patterns – boundary values, decision tables, etc 5% - 10% • Sixth sense ;) 20% - ∞
  • 16. iOS testing mind map
  • 17. Android • Test on different devices: o Different screen size > display of content o Different pixel density > display of graphic elements (icons, buttons, images, etc.) • Test on different OS versions: o Media files playback; o Action bar; o Custom animations; o Web view. • Test how application handles phone calls: o If in app there are services, which work with sound in background (e.g. music playback when app is minimized) > test how app works during incoming call; o If in app there are no services, which work with sound in background >it is possible just to test how app works when minimized.
  • 18. Useful tools for testing mobile applications • IDE: o Eclipse + DDMS + Sim o Xcode + Organizer + Sim • Visual: o Reflector o Jing o DDMS - capture android device • Network: o Sniffers/proxy (Burp, Tcp Catcher, Charles, etc.) o Network Link Conditioner • Location: o iOS Sim o Fake Location (Android) o Eclipse • Other: o iPhone Configuration Utility - manage certs o XMind o Crashlytics
  • 19. IDE • Android: o Eclipse https://www.eclipse.org o DDMS http://developer.android.com/tools/debugging/ddms.html o Simulator • iOS: o Xcode https://developer.apple.com/xcode/ o AppCode http://www.jetbrains.com/objc/ o Simulator
  • 20. Visual • Reflector http://www.airsquirrels.com/reflector/ • Jing http://www.techsmith.com/jing.html • DDMS - capture android device • Droid-at-Screen http://droid-at-screen.ribomation.com/
  • 21. Network • Sniffers/proxy: o Burp Suite http://portswigger.net/burp/ o Tcp Catcher http://www.tcpcatcher.org/download.php o Charles proxy http://www.charlesproxy.com/ • Network Link Conditioner
  • 22. Location • iOS Sim • Fake GPS location (Android) https://play.google.com/store/app s/details?id=com.lexa.fakegps&hl= en • Eclipse
  • 23. Other • iPhone Configuration Utility http://support.apple.com/downloads/#iphone configuration utility • XMind http://www.xmind.net • Crashlytics http://try.crashlytics.com
  • 24. Tips and Tricks • Application update - preserve data (DB migration) • User created data and iCloud • Crashlytics and change of bundle • Crashlytics and debug • Crashlytics and Hockeyapp • Flurry analytics • NSLog and time to handle crash • Activity is recreated in android after device orientation is changed • Cache • Auth token • Server errors handling • Server error vs. no connection error
  • 25. nikiphor@hotmail.com