mobile app quality - milwaukee spinmilwaukeespin.com/files/greglevenhagen-mobileappquality.pdf ·...

41
Mobile App Quality @GregLevenhagen Skyline Technologies, Inc.

Upload: others

Post on 20-Jun-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

Mobile App Quality

@GregLevenhagen Skyline Technologies, Inc.

Page 2: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

Agenda

• Challenges • Strategy • Security • Testing

Page 3: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

Why Quality, Why Test? C

ost

Prior States Prod QA

Page 4: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

Testing Challenges

Page 5: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

Market Share a.k.a Fragmentation

Page 6: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like
Page 7: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like
Page 8: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

What is the Big Picture?

Page 9: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

Key Differences Between Native & Mobile Apps • Immediate • Compatibility • Upgradability • Find-ability • Share-ability • Reach

• Lifecycle • Crossover • Time • Cost • Support • Sustainability

Page 10: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

Testing Differences

Native Mobile • App Install • Multiple Devices

– OS – Size – Themes – Interruptions (Tombstone) – OS, Device APIs

Mobile Web • No Install • Browser Wars

– iOS – Safari – Android – Variety – Windows Phone – IE

• Requires Connection • Load Times

Page 11: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

Mobile Quality Strategy

Page 12: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

Most Common Mobile Testing Challenges Factor Traditional Test Mobile Test

Platform Workstation Mobile Device

User Input Keyboard / Mouse Touch

Collaboration Screen Share ?

Verification Screen Capture / Video

?

Utilities Yes ?

Automated Yes ?

Performance Yes ?

Page 13: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

Increasingly Complex Testing Matrix

Page 14: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like
Page 15: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

Mind Maps …. What is a Mind Map? • Hardware • Network • Data • Software • Audio/Video • Functionality • User Interface / User Experience

Page 16: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like
Page 17: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

Know Your Users!

Page 18: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like
Page 19: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

Mobile Security

Page 20: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

Enterprise Mobile Apps

1. Should prompt a user for credentials in order to launch the app. 2. Must protect their local data-at-rest with encryption. 3. Must protect their data-in-transit with SSL. 4. Must present credentials to the web services they’re calling in order to

send/receive data. 5. An Internet gateway at the edge of the network must be employed to

securely publish web services.

Page 21: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

Security • Confidentiality: Does your app keep your private data private? • Integrity: Can the data from your app be trusted and verified? • Authentication: Does your app verify you are who you say you are? • Authorization: Does your application properly limit user privileges? • Availability: Can an attacker take the app offline? • Non-Repudiation: Does your app keep records of events?

Page 22: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

Mobile Testing

Page 23: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

Testing Functional Aspects

– All Mobile Apps • Enterprise, LOB, Productivity • Games • Marketing • Learning • etc.

Page 24: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

Functional Testing Types

Sign-up & Login Menu Options Keys Data Handling

Connection Speed / Carrier Operating System

Screen Size Interruptions

Error Messages

Page 25: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

Functional Testing Tips

• Screen Real Estate • Finding Device Specific Bugs • Normal Use Test • Idle Run Test

Page 26: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

Testing the Environment

Page 27: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

Jakob Nielsen on Tablet Usability

“The biggest problem in our recent tablet studies has been TMN: too much navigation. Also, too many inconsistently scrolling fields. Some tablet apps cram in so many weird features that users get overwhelmed and flail around without gaining mastery of the content.

Page 28: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

Load Testing

Page 29: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

Localization

• Content • Dates • Characters • Addresses • Phones

• Direction • Currency • Tax

Page 30: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

Usability Testing

Get Someone Experienced

Look for NEW users

Test Often!

Page 31: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

Emulators vs Devices

Page 32: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

Exploratory Testing

Page 33: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

Test Automation

• Platform Specific • Using Vendors • Roll Your Own

Page 34: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

Mobile Testing Tools

Page 35: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

iOS • Ranorex

– Multiple Platforms • frogLogic • Frank

– Selenium-Like – Cucumber

• KIF – Objective C

• UIAutomation – From Apple

• Can create nightly builds of iOS

apps using TFS – Infragistics has a great blog post on this

Page 36: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

Android • Robotium • BitBar

• Telerik • Mobile Labs

Page 37: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

Windows Phone

• MSTest • Silverlight Test Framework • C#

• Nunit • Telerik

Page 38: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

Skyline Technologies, Inc. SkylineTechnologies.com Microsoft Premier Partner

Custom Software Mobile, Web, Cloud, Desktop, Other Business Intelligence Portals SharePoint E-Marketing Business Consulting

Milwaukee, Green Bay, Appleton

Page 39: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

August 12th – 14th 2013

Tickets on Sale May 15th Call for Speakers April 1st

Page 40: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

Thanks You!!! … Questions?

@GregLevenhagen

[email protected]

linkedIn.com/in/gregLevenhagen

Page 41: Mobile App Quality - Milwaukee SPINmilwaukeespin.com/Files/greglevenhagen-mobileappquality.pdf · iOS • Ranorex – Multiple Platforms • frogLogic • Frank – Selenium-Like

References • iOS Mind Map

– http://www.neglectedpotential.com/wp-content/uploads/iOS-Mind-Map-1.1.png • Stuff Users Hate

– http://www.mobileapptesting.com/infographic-the-state-of-mobile-app-quality/2012/02/ • Enterprise Mobile Apps List

– http://robtiffany.com/5-steps-to-containerize-your-apps/?goback=%2Egde_4500837_member_215244516