Testing Requirements for Mobile

difficultmangledΚινητά – Ασύρματες Τεχνολογίες

12 Νοε 2013 (πριν από 3 χρόνια και 11 μήνες)

92 εμφανίσεις

Testing Requirements for Mobile
Applications

Dennis
Soh

Article authored by:
Valéria Lelli Leitão
Dantas, Fabiana Gomes Marinho, Aline
Luiza da Costa, Rossana M. C. Andrade

Background


Explosion of mobile technology


60 million
smartphone

users in US in 2009


Expected to grow to 142 million by end of 2011


iPad
, other tablets growing in popularity


Background


Android,
iOS
, Palm
WebOS
, Windows 7 among
mobile
OSes


Each has unique properties, including unique
development environment, programming
language support, etc.

Problems


Testing software on mobile devices has unique
challenges


These must be considered early in
development

Key factors


Mobile Context


Environment limitations; e.g. screen, (lack of)
keyboard, etc.


Mobile User


On
-
the
-
go; not sitting at a desk


Mobile Application


Different aspects of the device that the software
can interact with; network operator, I/O
interfaces, etc.

Any test plan needs to consider
these factors!

Research methodology


2 questionnaires, sent to 40 professionals at
15 companies


Professionals worked on >1 mobile app, >3
months experience in mobile app dev.


Questionnaire 1: for developers


Questionnaire 2: for QA

Proposed Testing Requirements

Testing Requirements


Development process model must focus on
testing process


Incremental process most popular; used by 70% of
professionals surveyed


Test process should consider mobile context; 85%
of professionals not using test process designed
for mobile


Testing Requirements


Mobile applications must be tested on both
emulator and real devices


Emulator

Mobile Device

Functionality

Device variations

(keyboard,
screen size, etc.)

Usability issues,

design

Usability

issues specific to
device

User behavior

Performance, resources, real
-
world problems

Testing Requirements


Test reports must document details about the
test environment (emulator/device, device
model, OS version, etc.)


Testers must verify that application does not
harm any existing applications


Interruptions (e.g. someone’s calling you) must be
handled appropriately

Testing Requirements


Applications must be tested according to their
targeted mobile context limitations


Memory, CPU, screen size/resolution, power, etc.


Test process must differentiate between
features to be tested in controlled
environment and features to be tested “in the
field.”

Testing Requirements


Usability testing specific to mobile
applications must be included in testing phase


56% of professionals perform usability testing,
only 18% do so in field


Mobile user must have a clear sense of the
state of the application.


What have you already done? What can you do
now? Can you undo actions?

Testing Requirements


Application must support change in device
orientation


Portrait/landscape format


Application must ask for permission before
making connections


What if user doesn’t have unlimited data?
Lawsuit!

Testing Requirements


UI layout must be appropriate for mobile
devices


Minimize scrolling, appropriate contrast in
background/text, appropriate text size, etc.


Important/irreversible actions should require
confirmation


Easy for user to make mistakes due to screen
size/imprecise input


Testing Requirements


Sound (if present) should be useful and be
integrated with device’s sound controls


Buttons should act in manner appropriate to
the device


E.g. don’t bind the “exit” or “back” key to positive
actions such as select and “OK”

And the Survey Says…


No real consensus on the “right” way to test
mobile


Very limited adoption of automated test tools
(only 10% of professionals surveyed)

Testing the Tests


Researchers applied test requirements to a
mobile shopping app


Test requirements were found to be beneficial
in highlighting areas of concern specific to
mobile apps

Conclusion


Testing for mobile has unique challenges


Vastly different spread in hardware
configs


Mobility


Hardware constraints


Recent proliferation of mobile devices
-
> lack
of consensus regarding development


Companies are “winging it”

Conclusion


Proposed requirements offer a “starting
point”


No comparison point because this is presumed to
be better than “winging it”


In future..


Requirements should be refined and prioritized


Requirements specific to certain categories of
applications should be defined