Upload
fagun-bhavsar
View
229
Download
0
Embed Size (px)
Citation preview
7/27/2019 Scripted Exploritory Automated Testing
1/16
7/27/2019 Scripted Exploritory Automated Testing
2/162TestComplete
by SMARTBEAR
Combining Your Scripted,
Exploratory and Automated
Mobile Testing
Contents
Introduction ............................................................................................3
Why Testing Mobile Apps Is Different Than Any Other Platform............4
Rule #1 - Make sure your mobile app does what the user is
expecting it to do. ............................................................................................. 5
Rule #2 - Concentrate on the devices where the majority of
your target market will be and camp out there. ................................................. 5
Asking the Right Questions ...................................................................6
GPS .................................................................................................................. 6Data .................................................................................................................. 6
Gestures ........................................................................................................... 7
GUI.................................................................................................................... 7
Processing Power ............................................................................................. 8
Memory ............................................................................................................. 8
Battery............................................................................................................... 8
Fragmentation of devices.................................................................................. 8
Scripted, Exploratory and Automated Testing in the Mobile Space .......9Automated Testing .......................................................................................... 10
Scripted Testing .............................................................................................. 12
Exploratory Testing ......................................................................................... 13
The Mobile Testing Balancing Act ........................................................14
Conclusion ...........................................................................................15
http://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcomplete7/27/2019 Scripted Exploritory Automated Testing
3/163TestComplete
by SMARTBEAR
Introduction
SoLoMo. You know the mantra. Social, local, mobile. Its the way the
Internet is heading. Its the direction that the world is heading. We have
been hearing it for years.
The difference with that clarion cry is that we are way past the hype
phase. No longer do we wonder if this is the Year of Mobile.
Mobile has arrived and it is past the point of novelty. Whether it is busi-
ness or personal use, mobile is getting more and more ingrained in all
aspects of our lives each and every day. As a result, users are more
savvy than ever before and their patience with poorly designed and
delivered mobile apps is very limited.
This shift in how the world accesses information and uses data has
forced the mobile world to grow up faster than it may have been ready
for. No longer can an app be almost there and be released into the
market. Today, if your mobile app is even the slightest bit buggy or
crashes from time to time or doesnt work on as many platforms as pos-
sible, you stand to lose big.
Its for this reason alone that the practice of mobile app testing is a
critical step in the life cycle of an app. Very few companies are allowed
any leeway in how their apps perform. A perfect example of this is
Facebook. Its hard to get more ubiquitous than Facebook, yet when thecompany went public the doubts about their mobile capabilities ham-
pered the stocks performance.
Now, if Facebooks mobile presence doesnt meet the high expectations
of the marketplace the entire brand suffers.
Granted, not all businesses face being put under this kind of harshinterrogation, but that day is not far off if we continue to progress at the
current pace. A mobile app that has even the smallest imperfection will
be quickly pushed aside in search for another to serve an end users
needs.
http://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcomplete7/27/2019 Scripted Exploritory Automated Testing
4/164TestComplete
by SMARTBEAR
Why Testing Mobile Apps Is Different Than Any Other Platform
That said, it is critical to address the testing aspect of your app develop-
ment with the utmost concern. In this eBook, we will take a look at the
different ways mobile app testers need to test.. Scripted testing alone
will not be enough. Exploratory testing alone will not be enough. Auto-
mated testing alone will not be enough.
Instead, todays testers of mobile apps will be required to nd the blend
of all three types of testing in order to feel condent that their apps are
ready for a rigorous marketplace.
We will explore the unique elements of the mobile world and how soft-
ware testers will need to nd the right mix of testing so that, when their
app gets to the end user, they wont immediately be cast aside.
Mobile is like the wild west of the digital era. While in some ways its not
much different than other areas, what separates it is that the wide range
and array of users and available devices create a myriad of combina-
tions. Because of this never ending series of combinations of user
types, platforms and other variables, it is likely to be an impossibility to
test for everything.
Accepting this fact from the onset will be important just so any work thathas been done can actually see the light of day in the marketplace.
To start, well rst take a look at a few of the elements that make the mo-
bile environment so challenging especially from a testing perspective,
and some general rules to help you deal with them.
http://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcomplete7/27/2019 Scripted Exploritory Automated Testing
5/165TestComplete
by SMARTBEAR
Before you go through the hard work of
putting an app through its paces with a
variety of tests, you better make sure it is
accomplishing the desired business task.
Rule #1 - Make sure your mobile app does what the user is
expecting it to do.
Before even getting near the intricacies and complexities of the mobile
environment, it has to be determined whether the app itself simply ac-complishes what it was originally intended to do.
Why is this more difcult in the mobile world? Its quite simple as to why,
but its a whole other issue as to what to do about it.
The why its hard is due to how
end users behave in the mobile
space. It is a very new area of
exploration for everyone and
almost everything that is seen is
some variation of rst use case,
which means that there is little or no historical data or experience to fall
back on for validation.
With this in mind, before you go through the hard work of putting an app
through its paces with a variety of tests, you better make sure it is ac-
complishing the desired business task.
Rule #2 - Concentrate on the devices where the majority of your
target market will be and camp out there.
There may not be a more difcult hurdle to overcome in the mobile app
world than the issue of device acceptance.
iOS, Android, Windows, and BlackBerry are difcult enough to test for
on their own. Then, get into the various versions of each mobile OS and
you can quickly feel like the better alternative is to simply scream and
hope it goes away. But add on to this the many and various operating
systems of Android, and the mobile landscape begins to seem innite
so it is rarely enough to only develop for iOS anymore. Certainly the
demographics of the iOS mobile device user are more attractive than
any other, but even that metric is becoming less dependable with the
http://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcomplete7/27/2019 Scripted Exploritory Automated Testing
6/166TestComplete
by SMARTBEAR
advances that Samsung and HTC have made with their Android models.
Many kids these days are walking around with a Galaxy S4 and not an
iPhone 5S. Since its difcult to be all things to all people, if you think
that most of your users are going to be a combination of iOS and the
most popular avor of Android / device, you may need to be developing
and testing just for those targets.
We are going to make a quick run through a variety of elements that will
be critical to consider as you test your mobile apps. Take note of some
of the questions you should be asking of each element.
GPS
How important are geolocation elements to your app? The merefact that you are working in the mobile environment implies that
you know the location of the user will be a critical piece of your
mobile app puzzle.
Does your app play with the major map platforms?
Will your app integrate properly with Google Maps? Apple
Maps?
Who do you use? Whom do you partner with?
Who gives the best data and user experience?
How are the various APIs?
What are the limitations and costs?
Data
How much data? What data? What are your privacy policies?
What are you accessing on their device?
What is your end users tolerance for privacy encroachment?
Asking the Right Questions
http://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcomplete7/27/2019 Scripted Exploritory Automated Testing
7/167TestComplete
by SMARTBEAR
Network Availability How does your app perform on various carrier networks as
opposed to Wi?
Will your app be a data hog that causes users to watch their
bandwidth usage as a result?
Is the performance on Wi so markedly improved as to
discourage the end user from using the app in any other
environment?
Gestures
Does your app give the user gesture options that are confusingor that create conict with other apps?
If they are not willing to adapt to the gestures you have
incorporated in your app is the app navigable without them?
GUI
Lets get down to brass tacks here. Is your app simply butt-ugly? Does your app have a command line feel to it or is it appealing
to even the most non-technical of users (who will be a vast
majority of most app audiences anyway)?
Portrait and Landscape Views
What happens to your app when your end user turns his or herdevice on its side or on its head?
Does it respond quickly?
Is it responsive at all?
Are there any elds that suddenly become impossible to
navigate because of the limited space due to the keyboard
expanding for use?
http://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcomplete7/27/2019 Scripted Exploritory Automated Testing
8/168TestComplete
by SMARTBEAR
Processing Power
The last thing you want your app to be associated with ismaking your users device so slow because it is a tremendous
resource hog. If within those rst few hours of downloading yourapp your customer notices that nothing is working as well on
their device as it did before they downloaded your app guess
what happens.
Memory
Lets be honest. Most mobile device users are pushing theirmemory limits to the nth degree on any given day.
How will your app impact device memory?
Battery
What impact will your app have on the battery life of a mobiledevice? If an end user downloads your app then suddenly sees
their battery life fall through the oor you may be viewed as a
troublemaker. Not good.
Fragmentation of devices
We alluded to this earlier, but its the simple truth about themobile space. There are an ever growing list of devices, screen
sizes, form factors, etc. that make up the mobile marketplace.
Its not cheap to make design alterations for every make and
model. Also, once you make accommodations for one you may
end up breaking something with another.
Will you need to pick and choose which devices are going to
represent the largest portion of your target market then go from
there? This is a critical decision that must be taken seriously.
http://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcomplete7/27/2019 Scripted Exploritory Automated Testing
9/169TestComplete
by SMARTBEAR
There is one more important element in this process. The element is
time. Everyone gets the same amount of it every day and it is a re-
source that cannot be grown or added to. The results, as it relates to
your mobile app development and testing, is that you have to place time
limits and parameters on the testing environment. Therefor, it becomes
even more critical to use the right type and combination of testing meth-
odologies to ensure that your mobile app is ready for its introduction to
the marketplace.
Now that we have explored the various elements of the mobile environ-
ment in at least a cursory fashion, its time to look at what types of app
testing will help you put your best mobile app foot forward.
To set the stage lets take to heart this quote from a Mobile Marketer
article
Mobile is different, and when companies dont treat mobile ap-
plications as a key part of their business by investing in a great
user experience, consumers are disappointed in the applications,
said Peter Galvin, senior vice president of marketing at Soasta,
Mountain View, CA.
Our research has shown that many mobile applications are not
properly tested before they are delivered to consumers, he said.
In the physical world marketers test their advertising, store con-
cepts and messaging to ensure they resonate with consumers.
If that is the case, then why is testing in the mobile space not priori-
tized properly by many? Simply put, testing effectively can be a daunt-
ing task. Effective app testing in much more stable and less variable
environments is hard enough, but add the reality of testing in a world ofconstant change and it becomes a challenge that has to be faced with
appropriate expectations.
Scripted, Exploratory and Automated Testing in the Mobile Space
http://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcomplete7/27/2019 Scripted Exploritory Automated Testing
10/1610TestComplete
by SMARTBEAR
What are those expectations? Well, with a fair amount of planning, a
concentrated effort and a little luck, one should expect that they could
cover most of the bases when testing mobile apps.
What is probably unrealistic is the expectation of testing for every situa-
tion, under every potential scenario and uncovering every little ailment
of an app before it gets to market. Especially since the uid nature of
the mobile space changes the rules so often, you can never take care of
every angle.
That doesnt mean that it cant get close though. The best way to get
result that are going to set your efforts apart from your competitions is
by utilizing various testing methods in the right mix.
As with any software or app testing, the process is as much art as it is
science. Flexibility will win the day, so loosen your collar as we delve
into the testing options that are available and help you decide what is
the right formula for your needs.
Automated Testing
We are going to start off this conversation about automated testing with
this caveat. Automated testing in the mobile environment should not
be an end unto itself. In other words, the majority of mobile app testing
should occur in the manual (scripted) and exploratory space, while auto-
mated testing serves as a support system for those two approaches.
Now that we have established that, we can look at automated testing of
mobile apps in the proper light. Just the mere mention of automation in
the mobile space can make many queasy because automation implies
process. Process implies repetition. Repetition implies that the mobile
experience is something that is rote and repeatable and doesnt neces-
sarily require human intelligence or creativity. Well, its not really true,
especially given the strategy required in understanding how and when
to use automated testing.
http://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcomplete7/27/2019 Scripted Exploritory Automated Testing
11/1611TestComplete
by SMARTBEAR
So, what can automated tests actually cover? The best-case scenario is
to test aspects that require no user interaction. That might include:
Did this API function return the correct value? Did this function calculate the correct result? Did we successfully send a le over the network with the correct
checksum?
Did this callback function actually re?(Source: Corona Labs)
The automated piece of mobile app testing is more about the backend
functionality of the app. In other words, if something were to be triggered
by a user (regardless of how that trigger was activated) how does the
app respond?
When looking into automated testing for a mobile app, it is critical to
remember that anything regarding UI and UX requires some form ofhuman interaction in order to truly see what happens. Relegating this
interaction of end user and app to an automated process exposes the
test process to the risk of missing all the nuance of having a real person
generate an action in the app.
Automation will likely only investigate a few options as to how something
may occur in the app.
Its these limitations in the automated testing process that keep this form
of testing in a supporting role of the other testing methods. It is impor-
tant to realize the limitations of automated testing and making sure it
stays within those limits.
Now that we have established where automated testing plays best inthe mobile space, lets turn our attention to the methods that are going
to produce the most important feedback.
http://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.coronalabs.com/blog/2011/08/08/automated-testing-on-mobile-devices-part1/http://www.coronalabs.com/blog/2011/08/08/automated-testing-on-mobile-devices-part1/http://www.smartbear.com/testcomplete7/27/2019 Scripted Exploritory Automated Testing
12/1612TestComplete
by SMARTBEAR
Scripted Testing
In manual testing, scripted tests are the next step up from automation.
There is much more exibility in the testing, but the fact that it is scripted
implies limitations. Thats ne. Developers, business stakeholders,and other critical input sources have areas of concern that need to be
vettedand scripted tests allow for those areas of concern to be ad-
dressed.
Using Personas
Developing user personas (different proles of those who the app is
really being built for) is a key component in increasing the effectiveness
of a mobile app. Hopefully, the various personas that make up the target
market of any mobile app were considered in the design and develop-
ment of the app from the onset.
There can be scripted testing that is built around personas. This will help
to uncover potential issues that a specic subset of customers might
encounter based on:
Who they are
How they function
What they like
Why they would use the app, etc.
The number of personas tested will depend on how many there are for a
particular app and what kind of resources are available (read: time and
money) to test as many variations of a theme as possible. The use of
scripted tests from that personas point of view can do well to uncover
potential issues.
http://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcomplete7/27/2019 Scripted Exploritory Automated Testing
13/1613TestComplete
by SMARTBEAR
Exploratory Testing
Its at this point, however, that we quickly reach the limitations of
scripted testing. No matter how much an end user ts the persona, a
scripted test will never allow for the inevitable variations on a theme. In
other words, human beings rarely, if ever, truly follow a script.
With that said, it becomes imperative for those conducting the tests of
an app to start to go off script and into an area that might more ac-
curately represent reality. The means to get there is through exploratory
testing.
Exploratory testing is simply a more free owing methodology of testingthat, through experimentation, builds on itself and allows testers to get
into real world situations that may never be accounted for in automated
or scripted tests.
This mindset becomes even more valuable in the testing of mobile
apps because the situations an end user nds him or herself in change
constantly due to the fact that they are mobile. They are on the move.
Performing a task on a mobile device while sitting at a desk may look
very different than performing the
same task while walking down a
crowded sidewalk. Or at a trafc
light.
Exploratory testing ts perfectly
with mobile app development
because the very nature of many
mobile apps is exploratory in nature. People are doing things on the
move and are often in discovery mode themselves. Each time the app
is openeven though the function that is being called upon in the app is
the samethe reason for its use and its ultimate utility could be differentalmost every time.
In other words, in the mobile world things that might look like they are
repeated events are only repeated at a surface level. The intent and
Exploratory testing ts perfectly with mo-
bile app development because the very
nature of many mobile apps is explor-
atory in nature. People are doing things
on the move and are often in discovery
mode themselves.
http://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcomplete7/27/2019 Scripted Exploritory Automated Testing
14/1614TestComplete
by SMARTBEAR
ultimate goal of the user might be completely different each time that
particular function is called upon, which may create a different interac-
tion with the same function based on the external variables the end user
is experiencing.
To test how an app responds to such a dynamic environment requires
freedom. Exploratory testing that builds on previous experience or on
a new experience can allow the test to ex and move in directions that
best mimic that of a real life end user. As a result, the real discovery
regarding the strength and weakness of an app can occur.
It is critical to make sure that in this exploratory process there is ac-
curate data collection. This is a difculty of the exploratory model that is
compounded when used in the mobile space. How you require testers
to report their ndings could mean the difference between a jumble of
interesting tidbits and a result-set that impacts the performance of an
app.
Now that we have looked at the three areas of testing, their limitations
and their place individually, it is critical to make sure that we use the
right blend of all the available techniques to produce the strongest pos-
sible testing environment and the ensuing results.
To accomplish this takes much more than just crossed ngers and a
few Hail Marys. There needs to be real intentionality in the blending of
different testing options so that the entire scope of the mobile app can
be tested thoroughly enough to give greater go-to-market condence to
the business stakeholders. How this is accomplished is strategic plan-
ning on the upfront along with the willingness to be truly agile during the
process. This agility and sensitivity to the very nature of mobile comput-
ing will make the difference in how your tests perform.
The Mobile Testing Balancing Act
http://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcomplete7/27/2019 Scripted Exploritory Automated Testing
15/1615TestComplete
by SMARTBEAR
Obviously, this kind of balancing act is best performed by those with
experience in these matters. If they are not available, or affordable, this
might be the time to consider outside help in the form of products andservices designed to get you most of the way there.
In the end, testing mobile apps is something that needs special attention
and a renewed approach from traditional software testing. Over time, it
is likely that new methodologies will be developed that are more appro-priate for the mobile space.
Right now though, at this early stage in the game, we need to work with
the existing testing types like automated and scripted testing but allow
them to be avored by a sense of adventure, so to speak.
The mobile space is new and exciting. It is also relatively unmapped ascompared to other places in the digital geography. With that in mind, ef-
fective mobile app testing will require a spirit of true exploration.
Testing mobile applications so that you may be able to create the best
possible experience for your end users is a true work in progress.
As you move through it, mixing and matching testing procedures and
techniques will be the key to giving your efforts the best chance to truly
make an impact in the mobile world.
Are you ready? Are you exible? Are you adventurous?
Conclusion
http://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcompletehttp://www.smartbear.com/testcomplete7/27/2019 Scripted Exploritory Automated Testing
16/16
About SmartBear Software
More than one million developers, testers and operations profession-
als use SmartBear tools to ensure the quality and performance of their
APIs, desktop, mobile, Web and cloud-based applications. SmartBear
products are easy to use and deploy, are affordable and available for
trial at the website. Learn more about the companys award-winning
tools or join the active user community at http://www.smartbear.com, on
Facebook or follow us on Twitter@smartbearand Google+.
SmartBear Software, Inc. 100 Cummings Center, Suite 234N Beverly, MA 01915
+1 978.236.7900 www.smartbear.com 2013 by SmartBear Software, Inc. Specications subject to change.
http://www.smartbear.com/http://www.smartbear.com/https://www.facebook.com/smartbearhttps://twitter.com/SmartBearhttps://plus.google.com/112549653237106886127/postshttp://www2.smartbear.com/tc-trial-sb-lazy-superhero.htmlhttp://www.smartbear.com/https://plus.google.com/112549653237106886127/postshttps://twitter.com/SmartBearhttps://www.facebook.com/smartbearhttp://www.smartbear.com/