Learnings from Hybrid App Testing Jijesh Mohan

Preview:

DESCRIPTION

Presentation from vodQA Bangalore Get Set Test

Citation preview

Learning from hybrid app testing on iPad

- Jijesh Mohan

Application

!   Book reader

!   Supports only tablets

!   Hybrid application

!   Current release for iPad

Technology Stack

!   Phonegap (Cordova)

!   Html 5 & Css 3

!   Objective – C

! Ember.js

How to test

!   Simulator Vs Devices

!   User Interactions

!   No. of Devices are limited

!   Installation ! Xcode & Developer license ! TestFlight

!   CI integration !   Can install in any no. of devices

!   Easy to send demo build to client !   Supports other platforms

Functionality

!   Any difference with Normal application testing?

!   App store review guide lines: !   Apps that crash will be rejected

!   Apps that exhibit bugs will be rejected

!   Apps larger than 50MB in size

!   Apps that are not very useful, unique, are simply web sites bundled as Apps, or do not provide any lasting entertainment value may be rejected

User Interface

!   Screen size !   Retina !   iPad Mini

! iOS Versions

!   More real estate than mobiles ( less no. of screens? )

!   Orientations

!   App guidelines !   "10.3: Apps that do not use system provided items, such as buttons and icons, correctly and

as described in the Apple iOS Human Interface Guidelines may be rejected”

!   "10.6: Apple and our customers place a high value on simple, refined, creative, well thought through interfaces. They take more work but are worth it. Apple sets a high bar. If your user interface is complex or less than very good, it may be rejected"

Interactions

!   Touch Events !   Single page web application ( Javascript errors)

!   Double tap problem

!   Voice Over

!   Gestures !   Handled by javascript

!   Wrong gestures

!   Conflict with system gestures

!   Need more exploratory testing

Network

!   Network activity suspend in locked/minimized mode

!   Download bigger files

!   Network Visual indicator

Network

!   Test in different speed !   Limit the bandwidth of the server ( e.g nginx)

!   Network link Conditioner

!   Device – Developer tools

Performance & Memory

!   Gatling for Server

!   User experience matters in devices

!   Memory !   Memory limit

!   Profiling app using instruments

Automation

!   Selenium / Calabash / Frank

!   BDD Style of testing

!   Minimal support on Hybrid application

!   No iFrame Support !

!   Actual Device testing

!   33 Scenarios automated

Mobile Grid

!   Automation testing in multiple devices.

!   Consolidation of reports & history

!   Automatic Discovery of devices

!   Report & Trend Analysis

Demo

Conclusion

!   Test in actual devices

!   More exploratory testing on user interactions

!   Memory leaks!

!   App Review guide lines & Human interface guidelines

!   Network

!   Automation

Q & A

Thank You..