Date post: | 17-Jan-2016 |
Category: |
Documents |
Upload: | william-todd |
View: | 212 times |
Download: | 0 times |
Basics of testing mobile appsThursday, 5 November
2
Agenda• What is a mobile app and why is it important?• Types of mobile apps • Different mobile OS/ stores• Wireless mobile networks • Challenges with mobile app testing• Process & Methodology• Types of testing on mobile• Mobile testing – Infrastructure options • Best practices• Conclusion
3
What is a mobile app?A mobile app is a software application developed specifically for use on small, wireless computing devices, such as smart-phones and tablets, rather than desktop or laptop computers.
What is the need? • Be visible to customers at all times • Act as a direct Marketing channel • Create value to your customers• Build Brand
4
Why mobile is important?
5
Why mobile is important?
We are now past the mobile Tipping Point
And why is quality critical?• With so many applications vying for users' attention, high quality is
essential for the success of an app #Competition • The consumers should have a good experience each time they use
the app starting from the very first time #TheFirstImpact• If there are flaws that are detected by the consumers the chances are
high that they never come back #RetainingUsers• Poor-quality applications not only hamper user adoption but also can
cause revenue loss and irreparable brand damage #MoneySpeaks
#Competition
#MoneySpeaks
#RetainingUsers
# TheFirstImpact
7
Agenda• What is a mobile app and why is it important?• Types of mobile apps • Different mobile OS/ stores• Wireless mobile networks • Challenges with mobile app testing• Process & Methodology• Types of testing on mobile• Mobile testing – Infrastructure options • Best practices• Conclusion
8
Types of mobile apps Native Apps • Are installed through app stores like Google Play
Store or Apple’s App store• Offers fast, most reliable and most responsive
experience to the users• Platform specific Web Apps • Are not real applications but are the mobile
version of a site which are opened in a browser • Developing web apps is simple and quick• Slower and less intuitive
9
Hybrid Apps • Are installed on mobile phones through app
stores• Uses the features and capabilities of core
platform along with web technologies like HTML, CSS and Javascript
Types of mobile apps
10
Agenda• What is a mobile app and why is it important?• Types of mobile apps • Different mobile OS/ stores• Wireless mobile networks • Challenges with mobile app testing• Process & Methodology• Types of testing on mobile• Mobile testing – Infrastructure options • Best practices• Conclusion
11
Mobile Operating Systems/ StoresThe important mobile OS are –
12
Mobile Operating Systems/ StoresThe important mobile OS are –
• Google Android platform / Play Store • Apple’s iOS / App Store
• Windows Mobile OS / Windows Store
• Blackberry OS / Blackberry World
13
Agenda• What is a mobile app and why is it important?• Types of mobile apps • Different mobile OS/ stores• Wireless mobile networks • Challenges with mobile app testing• Process & Methodology• Types of testing on mobile• Mobile testing – Infrastructure options • Best practices• Conclusion
14
Wireless mobile networks• Almost all applications rely on network
connectivity to provide its functionality• It is important that the application is
tested on actual network environment to get the real picture of the application’s behavior
• In test environments, Wi-Fi networks can be easy to set up and can be cost effective, unlike cellular connectivity that can be both unreliable and expensive
• To be successful, the mobile app should perform consistently across diverse network conditions
15
Wireless mobile networks
16
Agenda• What is a mobile app and why is it important?• Types of mobile apps • Different mobile OS/ stores• Wireless mobile networks • Challenges with mobile app testing• Process & Methodology• Types of testing on mobile• Mobile testing – Infrastructure options • Best practices• Conclusion
17
Challenges – mobile apps testing
18
Testing mobile applications is more complex and time consumingcompared to traditional desktop and web applications due to - Device diversity Different OS and different versions Wide variety of device form factors (phones & tablets of different screen
sizes and resolution) Network connectivity options Unique environment conditions Frequent changes in OS
Challenges – mobile apps testing
19
Agenda• What is a mobile app and why is it important?• Types of mobile apps • Different mobile OS/ stores• Wireless mobile networks • Challenges with mobile app testing• Process & Methodology• Types of testing on mobile• Mobile testing – Infrastructure options • Best practices• Conclusion
20
Process & Methodology – mobile testing
21
Agenda• What is a mobile app and why is it important?• Types of mobile apps • Different mobile OS/ stores• Wireless mobile networks • Challenges with mobile app testing• Process & Methodology• Types of testing on mobile• Mobile testing – Infrastructure options • Best practices• Conclusion
22
Types of testing on mobile apps
23
Agenda• What is a mobile app and why is it important?• Types of mobile apps • Different mobile OS/ stores• Wireless mobile networks • Challenges with mobile app testing• Process & Methodology• Types of testing on mobile• Mobile testing – Infrastructure options • Best practices• Conclusion
24
Infrastructure options
• One of the biggest challenges for mobile testing is device support. The number of models and types of smartphones on the market today is already large, with more always entering the market. Each device tends to have differences, and deciding which devices to test can be a challenge
• The organization should take into consideration the expected number of users for a device and/or operating system as well as the marketing needs for the application, such as target audience and market share of devices
• After weighing these factors, the organization can decide which handsets to procure for testing
Physical Devices
25
Infrastructure options
• Use of device emulators can be highly effective in the early stages of product development when the features are still under development
• Emulators can be used to test the basic functionalities of the application
• However it is imperative to test on physical devices to evaluate how the application behaves in real life scenarios
• Few of the easy to use mobile device emulators are : iPhone Tester, Mobile Phone Emulator, MobiReady, Responsivepx, Screenfly
Emulators
26
Infrastructure options
• Cloud-based testing is a desirable option for testing mobile applications. Cloud computing provides a web-based mobile testing environment where applications can be deployed, tested, and managed
• Besides providing on-demand access to the diversity of mobile devices, cloud testing environment helps curtail the project costs while increasing ROI
• Can be used to setup Alpha and Beta test environments for controlled production push
Cloud Based
27
Infrastructure options
28
Infrastructure options
29
Agenda• What is a mobile app and why is it important?• Types of mobile apps • Different mobile OS/ stores• Wireless mobile networks • Challenges with mobile app testing• Process & Methodology• Types of testing on mobile• Mobile testing – Infrastructure options • Best practices• Conclusion
30
Best practices
31
Best practices
32
Best practices
33
Best practices
34
Agenda• What is a mobile app and why is it important?• Types of mobile apps • Different mobile OS/ stores• Wireless mobile networks • Challenges with mobile app testing• Process & Methodology• Types of testing on mobile• Mobile testing – Infrastructure options • Best practices• Conclusion
Conclusion• Despite the challenges in mobile application testing, careful selection
of target devices, connectivity options, and tools that maximize automation can ensure a cost effective mobile testing process
• An optimal selection of target devices and using a mix of simulators and physical devices can maximize test coverage without the need to test every feature on each device
• The use of Wi-Fi networks for the majority of testing in combination with network simulation tools can reduce the cost and complexity of testing on various cellular networks
• Maximizing automation is an effective way of expediting the testing process and reducing long term testing costs
• Combining the solutions to mobile specific aspects of application testing with traditional best practices and testing processes can effectively address the challenges of mobile application testing
36
Q & A/ Thank You