five ways to improve your mobile testing

21
T22 Mobile Testing 10/16/2014 3:00:00 PM Five Ways to Improve Your Mobile Testing Presented by: Dennis Schultz IBM Brought to you by: 340 Corporate Way, Suite 300, Orange Park, FL 32073 888-268-8770 ∙ 904-278-0524 ∙ [email protected] ∙ www.sqe.com

Upload: techwellpresentations

Post on 15-Jul-2015

202 views

Category:

Technology


2 download

TRANSCRIPT

T22 Mobile Testing

10/16/2014 3:00:00 PM

Five Ways to Improve Your Mobile Testing

Presented by:

Dennis Schultz

IBM

Brought to you by:

340 Corporate Way, Suite 300, Orange Park, FL 32073 888-268-8770 ∙ 904-278-0524 ∙ [email protected] ∙ www.sqe.com

Dennis Schultz

IBM In IBM’s Emerging Technologies organization, Dennis Schultz is a solution architect, tester, and software engineer. As a child, Dennis had an insatiable curiosity of how things worked and a desire to take them apart. The all-too-common outcome was that he could not put them back together again, thus leading to an adult career in testing. Wanting to make amends for these transgressions eventually lead to his current position as a Solution Architect, helping clients assemble products and tools into integrated solutions to meet their challenges. Dennis has held roles in IBM from marketing to sales enablement to technical sales.

© 2014 IBM Corporation

5 Ways to Improve the Quality and Efficiency of your Mobile Testing

Dennis Schultz, IBM Solution Architect Rational Emerging Technologies Team [email protected] dennisschultz.wordpress.com

© 2014 IBM Corporation 2

Mobile

State of the Market

© 2014 IBM Corporation 3

Mobile

48% of mobile consumers reported

feeling frustrated and annoyed, with

sites that are not designed with

mobile in mind.

The Mobile Imperative "Only 16% of consumers

would give a mobile app

more than two attempts.

Poor mobile app

experience is therefore

likely to discourage users

from using an app again."

No Mobile Site = Lost Customers Two-thirds of smart phone users say a mobile-friendly site makes them more likely to buy a company’s product or service

Mobile internet usage doubles in growth in the U.S.

By 2014, mobile internet

should take over desktop

internet usage

“By 2014, mobile internet should take over desktop internet usage”

“By 2014, mobile internet should take over desktop internet usage”

“By 2014, mobile internet should take over desktop internet usage”

“By 2014, mobile internet should take over desktop internet usage”

Mobile Shoppers in the US projected to spend $37.44 billion in 2013, up from $23.72 billion last year

"In 2013 consumers are expected to spend over $1.25 trillion dollars online, $38.4 billion will come from mobile"

"In 2013 consumers are expected to spend over $1.25 trillion dollars online, $38.4 billion will come from mobile""In 2013 consumers are expected to spend over $1.25 trillion dollars online, $38.4 billion will come from mobile“"In 2013 consumers are expected to spend over $1.25 trillion dollars online, $38.4 billion will come from mobile“ "In 2013 consumers are expected to spend over $1.25 trillion dollars online, $38.4 billion will come from mobile""In 2013 consumers are expected to spend over $1.25 trillion dollars online, $38.4 billion will come from

Spending on mobile

applications development will

grow by 50% in 2013 to nearly

2% of total IT spend.

"Gartner predicts that mobile AD

projects targeting smartphones and

tablets will outnumber native PC projects

by a ratio of 4:1 by 2015."

"Mobile users will increase by 91 million, over the next four years" (IDC)

“Sales of smart mobile devices including smartphones and tablets will grow by 20%, generate 20% of all IT sales, and drive a whopping 57% of all IT market growth" “Sales of smart mobile devices including smart phones and tablets will grow by 20%, generate 20% of all IT sales, and drive a whopping 57% of all

market growth“ “Sales of smart mobile devices including smart phones and tablets will grow by 20%, generate 20% of all IT sales, and drive

Mobile web growth: 1 in 5

internet users don't use a

computer

Mobile traffic has climbed to more than 16 percent of overall web traffic, increasing 27 percent this year.

eMarketer forecasts the number of mobile shoppers in the US will increase by 24% in 2013 to 118 million consumers and represent 62% of digital shoppers.

"Since 2009, Mobile Internet usage

has doubled every year"

"A poor mobile experience can have

a negative impact on the

transaction; and in the long term, it

could be even more detrimental to a

brand's reputation"

A Poor Mobile Email Experience Leads 30

percent of Consumer to Unsubscribe

© 2014 IBM Corporation 4

Mobile

Question:

Are the apps you are developing and testing “mission critical”? Would your management agree?

© 2014 IBM Corporation 5

Mobile

Challenges of Testing Mobile Applications

DEVICE DIVERSITY APP DIVERSITY ORGANIZATION

DIVERSITY

•  Multiple diverse teams •  ALM tools •  Automation tools •  Business process tester •  Automation engineers

and programmers •  Manual testers

MOBILE PAYMENT

APP

INVESTMENT APP

MAIN WEBSITE

INTERNAL CORPORATE

WEBSITE

INTERNAL EXPENSE

APP

INTERNAL TRADING

APP COMMERCIAL BANKING

APP

•  Software Platforms •  Connectivity •  Hardware

Native Web Hybrid

© 2014 IBM Corporation 6

Mobile

Question:

What type(s) of mobile apps are you developing? 1.  Native 2.  Web 3.  Hybrid

© 2014 IBM Corporation 7

Mobile

Question:

What is your role? 1.  All I do is test and I only test mobile apps. 2.  All I do is test. I test mobile apps, but my day job is testing

other stuff. 3.  I’m a developer and they are forcing me to test what I write.

© 2014 IBM Corporation 8

Mobile

The Impact of Mobile

Development

Testing

Data Management / Security

Area / Discipline

PM/Requirements Management

UI Design Low Large

Low Medium

Huge Huge

Low Low

Process Changes Tool Changes

Low None

© 2014 IBM Corporation 9

Mobile

5 Ways to Improve the Quality and Efficiency

of your Mobile Testing

© 2014 IBM Corporation 10

Mobile

1.  Implement a collaborative, agile process using ALM tools

5 Ways to Improve the Quality and Efficiency of your Mobile Testing

© 2014 IBM Corporation 11

Mobile

! Software development involves a team of people with diverse skills using different tools

–  Design, development, test, operations, etc.

! Tools can make or break collaboration –  Fragmented tools create silos –  Integrated tools break down barriers

! Effective development depends on … –  Defined goals –  Transparency of progress and quality trends –  Aligning teams across the entire application

development lifecycle

Mobile Software Development is a Team Sport

© 2014 IBM Corporation 12

Mobile

Application Lifecycle Management (ALM) is the discipline of overcoming organizational silos to realize a whole-team, whole-view approach to the software delivery cycle.

1. Business

2. Development

Decide

3. Operations*

ALM manages the flow of: People Process

Information

Mobile development requires the adoption of Agile practices to keep up with demand for frequent releases

© 2014 IBM Corporation 13

Mobile

Question

Do your current mobile development projects use Agile methods and practices? 1.  Yes, all of them use Agile 2.  No, none of them use Agile 3.  Mix, some of them use Agile

© 2014 IBM Corporation 14

Mobile

What does an Agile paradigm offer?

Agile succeeds three times more often than non-agile projects

The Chaos Manifesto, Standish Group 2012

© 2014 IBM Corporation 15

Mobile

1.  Implement a collaborative agile process using ALM tools

2.  Automate repetitive tests to speed time to market and improve quality

5 Ways to Improve the Quality and Efficiency of your Mobile Testing

© 2014 IBM Corporation 16

Mobile

!  As with software QA, test automation of mobile apps improves the effectiveness of your QA test process

!  Improve quality !  Increase device coverage

!  Save money !  Execute more tests in less time

Automate, Automate, Automate

© 2014 IBM Corporation 17

Mobile

Goals

Test Cases

Frequency

Methodology

Basic acceptance, build acceptance

Functional testing across all existing areas of product

Compatibility across devices

Very high value to automate!

High value to automate

Medium value to automate

# of Devices

Optimal Test Strategy

Automated Testing

Automated Testing

Manual or Automated Testing

Smoke Testing

Regression Testing

Compatibility Testing

Deep testing of new areas of functionality

Low value to automate

Manual Testing

New Feature Testing

Not automated

Exploratory Testing

Exploration of functionality from customer viewpoint

Manual Testing

Efficient and Targeted Automation Strategy

© 2014 IBM Corporation 18

Mobile

Question

Do you use test automation tools today?

© 2014 IBM Corporation 19

Mobile

1.  Implement a collaborative agile process using ALM tools

2.  Automate repetitive tests to speed time to market and improve quality

3.  Adopt a strategy for Continuous Integration Testing

5 Ways to Improve the Quality and Efficiency of your Mobile Testing

© 2014 IBM Corporation 20

Mobile

Service virtualization makes the unavailable become available for testing

!  Virtual components simulate the behavior of a service or application during testing

!  System dependencies are a key challenge in setting up test environments

!  Unavailable/inaccessible services slow down the testing process

!  Costly 3rd party access fees can significantly impact testing availability

!  Virtual components run on commodity hardware, private cloud, public cloud

!  Each developer and tester can easily have their own test environment

!  Developers and testers can continue to use current testing procedures and tools

!  Streamline creation of production-like environments and negative testing

Heterogeneous Environments

Public Cloud Private Cloud

Data Warehouse Mainframe Enterprise Service Bus

Directory Identity

File systems

Collaboration

App Under Test Routing Service

Third-party Services Portals

Content Providers

EJB

Shared Services

Archives

Business Partners

Messaging Services

Databases Mainframe applications

App Under Test

Third-party Services

Packaged apps, messaging services, etc.

Virtual Components

© 2014 IBM Corporation 21

Mobile

Continuous Integration Testing - by example

DevOps Foundation

Continuous deployment and testing across all development stages

Pass/Fail App M1 M2 ERP WSDL 3rd party Database

Real V V V " Test /w back end systems

Real " Test my own piece

•  Test Mobile App with three virtualized services. •  Quick to setup and low-cost. •  Author integration tests early

#  Service Virtualization is an enabler for continuous integration testing

#  Services, applications, systems are introduced into the continuous integration cycle in a prioritized, controlled fashion.

# Controlled integration helps isolate defects for faster resolution.

© 2014 IBM Corporation 22

Mobile

Continuous Integration Testing - by example

DevOps Foundation

Continuous deployment and testing across all development stages

Pass/Fail App M1 M2 ERP WSDL 3rd party Database

Real V V V " Test /w back end systems

Real " Test my own piece

Real V V V R

Real V V V V

Real V V V Test Data V V

Real V V V Test Data V R

$ " " "

Integrate w/another This won’t

slow me down!

First Complete System Test

All components Integrated!

Real V V V Test Data R R " Test integrations with control

© 2014 IBM Corporation 23

Mobile

Continuous Integration Testing - by example

DevOps Foundation

Continuous deployment and testing across all development stages

Pass/Fail

Real R R V Test Data R R

Real R R R R R R

" The expensive backend

All Systems UP! "

App M1 M2 ERP WSDL 3rd party Database

Real V V V R

Real V V V V

Real V V V Test Data V V

Real V V V Test Data V R

$ " " "

Integrate w/another This won’t

slow me down!

First Complete System Test

All components Integrated!

Real V V V " Test /w back end systems

Real " Test my own piece

Real V V V Test Data R R " Test integrations with control

•  Accelerate test environment refresh •  Integrate and test new functionality with control •  Gradually test integrations with expensive

backend systems •  Combine continuous test execution with

automated build deployment – Validate not only the code being released but also the deployment process

•  Discover and isolate defects faster! •  Accelerate delivery of higher quality software!

© 2014 IBM Corporation 24

Mobile

Question

Are you using service virtualization or continuous integration testing today?

© 2014 IBM Corporation 25

Mobile

1.  Implement a collaborative agile process using ALM tools

2.  Automate repetitive tests to speed time to market and improve quality

3.  Adopt a strategy for Continuous Integration Testing

4.  Utilize a combination of real and emulated devices

5 Ways to Improve the Quality and Efficiency of your Mobile Testing

© 2014 IBM Corporation 26

Mobile

Different screen resolution / screen size

Unreadable text, blurred images, misalignment of screen elements, and items that fall off the screen.

Android Customizations

On-screen and physical controls that function differently across devices Customized handling of inputs and events (e.g. Samsung Swype vs. default Android keyboard). !

Memory / CPU

Low or insufficient memory or processing power. Impacts of other services running on the device.

Mobile device characteristics that impact the quality of your application or website, but are not easily verifiable using an emulated phone or browser, include:

Why Test on Real Devices?

© 2014 IBM Corporation 27

Mobile

!  Device platforms, fragmentation, and growth •  iOS, Android, BlackBerry, Windows Phone,

Symbian, etc. •  Multiple form factors and screen resolutions •  Device refresh every 24 months •  In 2011, over 300 new devices released

!  New capabilities to test •  Camera, GPS, direction, orientation, voice, etc.

!  More network considerations •  Multiple carriers, variable throughput and latency,

disconnected use, network switching, etc.

Testing on Real Devices is Challenging

© 2014 IBM Corporation 28

Mobile

Question

How much of your mobile testing is done using real devices? 1.  0 – 1/3 2.  1/3 – 2/3 3.  2/3 – All of it

© 2014 IBM Corporation 29

Mobile

Smok

e Te

stin

g U

nit

Test

ing

Mobile Product Development Timeline

Test

Pha

se

Emulators Real Devices/ Device Cloud

Emulators Real Devices/ Device Cloud

New

Fe

atur

e Te

stin

g Emulators Real Devices

When to use Emulators/Simulators vs Real Devices

Dev QA

OS

&

Com

patib

ility

Te

stin

g

Device Cloud

© 2014 IBM Corporation 30

Mobile

Real Devices in the cloud Your computer, connected to the internet

Your key presses and mouse clicks sent to the device

The device’s screen sent back to your

computer

SaaS-based Remote Device Products

© 2014 IBM Corporation 31

Mobile

Devices

Shared Devices !  24X7 access to hundreds of smart devices !  Use for compatibility testing, “untrusted device” testing

Private Devices !  24X7 access to your devices !  Enables geographically diverse team

!  Inside corporate firewall or external

Local Devices !  Plug your smart devices on hand directly into your local computer !  Make use of existing assets, great for local teams

Use a Combination of Local and Remote Devices

© 2014 IBM Corporation 32

Mobile

1.  Implement a collaborative agile process using ALM tools

2.  Automate repetitive tests to speed time to market and improve quality

3.  Adopt a strategy for Continuous Integration Testing

4.  Utilize a combination of real and emulated devices

5.  Focus on the user’s experience

5 Ways to Improve the Quality and Efficiency of your Mobile Testing

© 2014 IBM Corporation 33

Mobile

Concerns that make Mobile App Quality different

Tester End Users Developer LOB/Digital Marketer

�When someone leaves a negative review in the app store, it scars your app for life, you can’t respond to it, and you can’t learn more about the problem in order to fix it quickly.�

- Mobile Orchard

•  How effective is our mobile app at engaging customers?

•  How can I stay on top of current quality metrics, and turn them into an actionable strategy?

•  How could I get visibility to issues that customers experience in production so that I can address them quickly?

•  How can I get more people to test the apps so that we can cover different devices, network carriers, and OS versions?

•  How can I get the latest and greatest build without wasting my time to track that down?

•  How can I quickly submit bug reports with screenshots and device details right from the application?

•  How can I provide direct and constructive feedback?

© 2014 IBM Corporation 34

Mobile

Tester End Users Developer

Over the air build distribution 1 In app bug reporting 2

Crash log reporting

3

In app user feedback 4

LOB/Digital Marketer

Sentiment Analysis 5

Builds

User Feedback Crash logs

Bugs Bugs vs. Crashes

IBM Mobile Quality Assurance Continuously deliver high quality mobile apps

© 2014 IBM Corporation 35

Mobile

1.  Implement a collaborative agile process using ALM tools

2.  Automate repetitive tests to speed time to market and improve quality

3.  Adopt a strategy for Continuous Integration Testing

4.  Utilize a combination of real and emulated devices

5.  Focus on the user’s experience

5 Ways to Improve the Quality and Efficiency of your Mobile Testing

© 2014 IBM Corporation 36

Mobile

© 2014 IBM Corporation 37

Mobile

© Copyright IBM Corporation 2012. All rights reserved. The information contained in these materials is provided for informational purposes only, and is provided AS IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, these materials. Nothing contained in these materials is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software. References in these materials to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in these materials may change at any time at IBM�s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. IBM, the IBM logo, Rational, the Rational logo, Telelogic, the Telelogic logo, and other IBM products and services are trademarks of the International Business Machines Corporation, in the United States, other countries or both. Other company, product, or service names may be trademarks or service marks of others.