SlideShare ist ein Scribd-Unternehmen logo
1 von 12
Best Of Mobile
Application
Testing
Changing Market trends;
Global Acceptability;
Challenges
Shaireen Dhingra
Contents
1.

INTRODUCTION ..................................................................................................................................... 2

2.

TYPE OF OS ............................................................................................................................................ 3

3.

TYPES OF APPLICATIONS ....................................................................................................................... 4

4.

TYPES OF TESTING FOR MOBILE APPLICATIONS ................................................................................... 5

5.

QA CHALLENGES IN MOBILE APPLICATION TESTING ............................................................................ 6

6.

MOBILE APPLICATION TESTING RISK MITIGATORS ............................................................................... 8

Mobile Application Testing
1. INTRODUCTION
Mobile devices are evolving into increasingly sophisticated general purpose computers and
this has led to the development of a variety of platforms and operating systems in the
mobile space.The number and variety of consumer and enterprise mobile applications has
grown exponentially over the last few years. Organizations need to ensure that every
application meets a high quality bar in order to prevent revenue loss, lost productivity and
damage to brand reputation.
Mobile applications need to be tested on a variety of software platforms and versions, on
diverse hardware and under different network connectivity conditions. Moreover, the rapid
pace of mobile OS updates, the frequent introduction of new devices and the customer
expectation of quick upgrades require additional test cycles. Over a time every big
organization has entered into this business and thus, we have a variety of Mobile Operating
Systems evolving in the market.
Operating system

Owned By

Android

Google Inc.

iOS

Apple Inc.

Blackberry

Blackberry

Windows Mobile

Microsoft

Mobile Application Testing
2. TYPE OF OS
Android by Google Inc.
o Android is an Open Source, Linux-derived platform backed by Google.
IPhone OS from Apple Inc.
o IPhone OS has four abstraction layers: the Core OS layer, the Core Services
layer, the Media layer, and the Cocoa Touch layer. Presently XCode is the
development environment and the applications are written in Objective C (a
variant of language C).
Windows Mobile from Microsoft
o
Windows Mobile, also known as Windows Phone, is the mobile phone version
of Microsoft's operating system. Because of this, it is easily compatible with
many Windows programs such as Microsoft Office, making it a popular choice
for businesspeople.
Blackberry from RIM(Research In Motion)
o The BlackBerry OS is tailor-made for business, with functionality taking a seat
over personality or appearance. Its main focus is on messaging, email and
other communication features. Media players and other entrainment-based
applications are less-common for the device.

Mobile Application Testing
3. TYPES OF APPLICATIONS
A Smartphone is the one that has a vast range of applications (built-in) and supports plenty
more from the external apps markets. These apps allow the user to do almost everything
that previously required a Desktop PC or a laptop.
Native App
Web App
Hybrid App

Native App
Native mobile applications are the ones that run directly from your handheld. These are
mobile OS/platform based applications, which can be downloaded from the relevant mobile
store and thereafter installed on the device. Native mobile apps provide fast performance
and a high degree of reliability. They also have access to a phone’s various devices, such as
its camera and address book. However, this type of app is expensive to develop because it
is tied to one type of operating system, forcing the company that creates the app to make
duplicate versions that work on other platforms

Web App
Web mobile applications are software programs that run directly from the web browser on
mobile phones and tablets. These web-based mobile apps do not get installed on your
handheld mobile device and are run on web-hosted servers. These web-based mobile
applications can be developed on a single platform as they are not limited by the operating
systems of your device. Web apps are not real apps; they are really websites that, in many
ways, look and feel like native applications. They are run by a browser and typically written
in HTML5

Hybrid App
Hybrid Apps are like native apps, run on the device, and are written with web technologies
(HTML5, CSS and JavaScript). Hybrid apps run inside a native container, and leverage the
device’s browser engine (but not the browser) to render the HTML and process the
JavaScript locally. Often, companies build hybrid apps as wrappers for an existing web
page; in that way, they hope to get a presence in the app store, without spending
significant effort for developing a different app. Hybrid apps are also popular because they
allow cross-platform development: that is, the same HTML code components can be reused
on different mobile operating systems, reducing significantly the development costs.

Mobile Application Testing
4. TYPES OF TESTING FOR MOBILE APPLICATIONS
 Usability testing
This include text visibility in the selected language, navigation between screens, verification
of functionality online/offline, feedback from interaction with the system i.e. downloaded
application should prompt with message.

 Compatibility Testing
This entails validating the application for different mobile devices, OS versions, screen sizes
and resolution as per the requirement, checking if integration server changes, checking for
the app isolation with other apps on the device.

 Interface Testing
With diverse features and gestures of touch supported in smartphones, response time to
user’s action should be a considerable point. Thus testing each screen, buttons, text inputs,
navigation flows such as bookmarks, Facebook is very crucial.

 Services Testing
This includes checking the behavior of services. It includes checking if a service takes too
long or is used offline, and also checking the behavior of the service when the server goes
down.

 Performance Testing
This includes checking the server connection changes from Wi-Fi to 2G/3g or vice versa.
Also, application response time, memory leaks, resources like GPRS, CAMERA etc.

 Security Testing
With increased usage of internet on the mobile devices, all data transfer requires security.
This includes encryption/decryption techniques used for sensitive data communication,
checks for multi used support, and checks for access to saved files stored in application.

 Orientation Testing
This checks the behavior of application in different orientation. A smartphone supports both
landscape and portrait orientation. The change in orientationresults in change of the UI of
the application. Height, width, breadth are factors that change with orientation. The
application should respond to both.

 Localization Testing
With increase in globalization, survival becomes more challenging. The apps that support
global languages are more likely to sustain the market changes and trends.

Mobile Application Testing
5. QA CHALLENGES IN MOBILE APPLICATION
TESTING
The aim of application testing is to validate the quality and performance of the features
offered. There are, however, some challenges faced which makes mobile testing a greater
challenge vis-à-vis desktop and web-based application testing. Factors are:

 Mobile Testing strategy for Native Application
While native applications can provide a rich experience to the user, they also add some
complexity to the lives of those tasked with testing them.
Testing needs to ascertain that the app can be successfully downloaded to the device,
executed on the device and interact with the supporting back content infrastructure. When
updates are made its important to makesure that the application can be pushed out to and
accepted by the end user. There’s a misperception that successful testing of app
functionality on one device provides assurance across all others of the same operating
system.
To meet the challenge of testing for native mobile applications, it’s essential to test on the
physical devices supported by the application. Steps to ensure backward compatibility with
each older generation of the device is also expected. Consistency in executing the test plan
is also a problem when limited to manual testing.

 Mobile testing strategy for Web Application
While testing mobile Web applications several challenges encountered are presented by the
nature of the global, mobile Web. With Each challenge, different technology options are
explored to manage issues and mitigate risk. Coming up with the right solutions requires an
assessment of the advantages and disadvantages inherent in each of the testing options
available and determining the technology that best suits the requirements. These mobile
testing challenges include devices, network, and scripting.

 Various Mobile Platforms and devices
With the proliferation of devices such as iPhones, iPads, and a wide variety of Android
devices, mobile application providers have to market to a variety of mobile platforms to
reach their audience. However, because no industry-wide standards for operating systems
or device hardware have been established, this is not a simple task.Mobile testing is
challenging due to various compatibility issue as a mobile application can be deployed
across devices which have different
Operating Systems
Versions of Operating System
Manufacturers
Keypad types such as virtual or hard keypad

Mobile Application Testing
Creating separate tests for each device and platform can quickly become costly and time
intensive

 Data Carrier Providers
There are a lot of local data providers in market offering the best of their services in terms
of data connectivity, bandwidth, and speed but still in any case the speed has to be fast.
Whether it is a web or native application, both need speed and a good connectivity when
the data download or upload is little huge but if the data is very low like in KBs then a low
speed might work

 Mobile Testing Tool Availability for Automation
The tool used for desktop or web based testing do not work for mobile testing. When
everyday a tester has to run a same set of Suites or cases on an application again and again
then the need for automation arises. For mobile application testing, this has been a big
question for testers as even today there are not many good tools available in market
thatcan be used across platforms and for native as well as web application. Android and iOS
have their own tools, which come bundled with their SDKs like UI Automation and Monkey
Runner but then creating and maintaining two different tools is not recommendable.

 Skilled QA for Automation
Quality resource to automate the testing is a key point to be considered. With limited
automation tools available in market, the need for experienced resources is rising.
Automation team can assess the tools available in market for testing.

 Change in Orientation
With smartphones capturing a large part of the market, along came the big screen with
touch options. This feature brought a whole new interface. The bigger screen supported all
views like left portrait, right portrait, left landscape and right landscape. Application must
support both landscape and portrait view. The appearance of application should be
supported

 Battery Life
Mobile devices have a variable battery life based on the usage; various checks for
application behavior when the device is shut down automatically must be performed. Since
batteries found in mobiles are much smaller than in laptops, so battery consumption is an
important factor to measure the Performance of the application.

 Dependency on External Resources
The internet connectivity is one prime factor that affects the performance of an application.
Many applications depend on external resources like network connectivity. A major point to
be considered with the connectivity is the application’s behavior to the bandwidth
availability for connectivity. A check for such dependencies ought to be performed.

Mobile Application Testing
6. MOBILE APPLICATION TESTING RISK
MITIGATORS
With so many aspects to keep in mind while testing, it becomes difficult to find a single
effective solution. Following factors can be focused on to minimize the requirements of
testing

 Emulators
All application can be tested on emulators without investing in mobile handsets. They are
available free and can also be used for stress and performance testing. Various scenarios
like bypassing the network, using live environments like modem can be tested on the
emulators. It is a cost effective solution.
Emulated devicesare relatively easier to manage. You can switch device types by simply
loading a new device profile, and instantly you have a new device that presents itself to
your mobile Web application in the same way that the real device would. And because the
emulators run on more powerful PCs and servers and were designed with testing in mind,
they are typically fully instrumented to capture detailed diagnostics about the protocols that
go back and forth between client and server at the various levels of the stack.When you
encounter an application fault, you will have the information to isolate and thus correct the
problem. Emulated devices are thus cost effective, because a single platform with frequent
updates of device profiles can be used to test every device on the market both today and
tomorrow.
However, the very nature of emulators and simulators means testing is occurring in an
environment far removed from the real world, with a series of actions performed by a
mouse and keyboard, not fingers on a touch screen.

Mobile Application Testing
 Mobile Cloud Computing solutions
Mobile cloud computing environments can be used for deploying and testing a mobile
application. In this new architecture, data processing and data storage happen outside of
mobile devicesi.e. the task and data are kept on internet rather than on individual devices
and providing on-demand access.

 Real time Devices with Real Network
With emulator availability to test the application, it is to be kept in mind that testing on a
real device is always a different experience. Whenever required, a real time device with a
real network should be available. This is unavoidable as mobile devices will be used by end
users for running the application.

 Automation tools to avoid Manual work
Automating whatever possible is a key solution. Real device solutions that provide script and
playback functionality can allow execution of more test cases with higher degree of
consistency.This is a time saving option available for testing. Various tools are available in
market for mobile application testing

Mobile Application Testing
Mobile Application Testing
7. Conclusion
The various challenges that are involved in testing a mobile application can be extenuated by adopting
any combination of solutions provided here. Also, it is not a matter of choosing one tool or technique;
there are simply too many compromises that must be made. Most likely it is seen that a combination of
testing tools and techniques is required to meet quality requirements.
It is purely requirement based, which technique may turn out to be the most effective one. There may
be situations when a proven technique fails.

About the Author
Shaireen Dhingra
Business Technology Analyst
3 years of experience in Functional Testing
Experience on Mobile Application Development in Android and Windows OS 7

Mobile Application Testing

Weitere ähnliche Inhalte

Andere mochten auch

L'innovation HP au service de la mobilité en entreprise
L'innovation HP au service de la mobilité en entrepriseL'innovation HP au service de la mobilité en entreprise
L'innovation HP au service de la mobilité en entrepriseMicrosoft Décideurs IT
 
Mobile Application Development
Mobile Application DevelopmentMobile Application Development
Mobile Application DevelopmentRameez Ramzan
 
Codeurs en Seine 2014 : Comment effectuer des tests d'intégrations sur vos ap...
Codeurs en Seine 2014 : Comment effectuer des tests d'intégrations sur vos ap...Codeurs en Seine 2014 : Comment effectuer des tests d'intégrations sur vos ap...
Codeurs en Seine 2014 : Comment effectuer des tests d'intégrations sur vos ap...Romain Louvet
 
Mobile Application Testing Training Presentation
Mobile Application Testing Training PresentationMobile Application Testing Training Presentation
Mobile Application Testing Training PresentationMobiGnosis
 
Different types of mobile apps
Different types of mobile appsDifferent types of mobile apps
Different types of mobile appsEric Melchor
 
Mobile Application Testing
Mobile Application Testing Mobile Application Testing
Mobile Application Testing Shivaraj R
 
Mobile application testing
Mobile application testingMobile application testing
Mobile application testingSoftheme
 
Chp3 - Architecture Logicielle des Applications Mobiles
Chp3 - Architecture Logicielle des Applications MobilesChp3 - Architecture Logicielle des Applications Mobiles
Chp3 - Architecture Logicielle des Applications MobilesLilia Sfaxi
 
Mobile Application Testing
Mobile Application TestingMobile Application Testing
Mobile Application TestingSWAAM Tech
 
Testing Checklist for Mobile Applications-By Anurag Khode
Testing Checklist for Mobile Applications-By Anurag KhodeTesting Checklist for Mobile Applications-By Anurag Khode
Testing Checklist for Mobile Applications-By Anurag KhodeAnurag Khode
 
Mobile App Testing Checklist
Mobile App Testing ChecklistMobile App Testing Checklist
Mobile App Testing ChecklistManoj Lonar
 
Testing Techniques for Mobile Applications
Testing Techniques for Mobile ApplicationsTesting Techniques for Mobile Applications
Testing Techniques for Mobile ApplicationsIndicThreads
 

Andere mochten auch (14)

L'innovation HP au service de la mobilité en entreprise
L'innovation HP au service de la mobilité en entrepriseL'innovation HP au service de la mobilité en entreprise
L'innovation HP au service de la mobilité en entreprise
 
Mobile Application Development
Mobile Application DevelopmentMobile Application Development
Mobile Application Development
 
Codeurs en Seine 2014 : Comment effectuer des tests d'intégrations sur vos ap...
Codeurs en Seine 2014 : Comment effectuer des tests d'intégrations sur vos ap...Codeurs en Seine 2014 : Comment effectuer des tests d'intégrations sur vos ap...
Codeurs en Seine 2014 : Comment effectuer des tests d'intégrations sur vos ap...
 
Different types of mobile apps
Different types of mobile appsDifferent types of mobile apps
Different types of mobile apps
 
Mobile Application Testing
Mobile Application TestingMobile Application Testing
Mobile Application Testing
 
Mobile Application Testing Training Presentation
Mobile Application Testing Training PresentationMobile Application Testing Training Presentation
Mobile Application Testing Training Presentation
 
Different types of mobile apps
Different types of mobile appsDifferent types of mobile apps
Different types of mobile apps
 
Mobile Application Testing
Mobile Application Testing Mobile Application Testing
Mobile Application Testing
 
Mobile application testing
Mobile application testingMobile application testing
Mobile application testing
 
Chp3 - Architecture Logicielle des Applications Mobiles
Chp3 - Architecture Logicielle des Applications MobilesChp3 - Architecture Logicielle des Applications Mobiles
Chp3 - Architecture Logicielle des Applications Mobiles
 
Mobile Application Testing
Mobile Application TestingMobile Application Testing
Mobile Application Testing
 
Testing Checklist for Mobile Applications-By Anurag Khode
Testing Checklist for Mobile Applications-By Anurag KhodeTesting Checklist for Mobile Applications-By Anurag Khode
Testing Checklist for Mobile Applications-By Anurag Khode
 
Mobile App Testing Checklist
Mobile App Testing ChecklistMobile App Testing Checklist
Mobile App Testing Checklist
 
Testing Techniques for Mobile Applications
Testing Techniques for Mobile ApplicationsTesting Techniques for Mobile Applications
Testing Techniques for Mobile Applications
 

Kürzlich hochgeladen

Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 

Kürzlich hochgeladen (20)

Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 

Best of mobile application testing

  • 1. Best Of Mobile Application Testing Changing Market trends; Global Acceptability; Challenges Shaireen Dhingra
  • 2. Contents 1. INTRODUCTION ..................................................................................................................................... 2 2. TYPE OF OS ............................................................................................................................................ 3 3. TYPES OF APPLICATIONS ....................................................................................................................... 4 4. TYPES OF TESTING FOR MOBILE APPLICATIONS ................................................................................... 5 5. QA CHALLENGES IN MOBILE APPLICATION TESTING ............................................................................ 6 6. MOBILE APPLICATION TESTING RISK MITIGATORS ............................................................................... 8 Mobile Application Testing
  • 3. 1. INTRODUCTION Mobile devices are evolving into increasingly sophisticated general purpose computers and this has led to the development of a variety of platforms and operating systems in the mobile space.The number and variety of consumer and enterprise mobile applications has grown exponentially over the last few years. Organizations need to ensure that every application meets a high quality bar in order to prevent revenue loss, lost productivity and damage to brand reputation. Mobile applications need to be tested on a variety of software platforms and versions, on diverse hardware and under different network connectivity conditions. Moreover, the rapid pace of mobile OS updates, the frequent introduction of new devices and the customer expectation of quick upgrades require additional test cycles. Over a time every big organization has entered into this business and thus, we have a variety of Mobile Operating Systems evolving in the market. Operating system Owned By Android Google Inc. iOS Apple Inc. Blackberry Blackberry Windows Mobile Microsoft Mobile Application Testing
  • 4. 2. TYPE OF OS Android by Google Inc. o Android is an Open Source, Linux-derived platform backed by Google. IPhone OS from Apple Inc. o IPhone OS has four abstraction layers: the Core OS layer, the Core Services layer, the Media layer, and the Cocoa Touch layer. Presently XCode is the development environment and the applications are written in Objective C (a variant of language C). Windows Mobile from Microsoft o Windows Mobile, also known as Windows Phone, is the mobile phone version of Microsoft's operating system. Because of this, it is easily compatible with many Windows programs such as Microsoft Office, making it a popular choice for businesspeople. Blackberry from RIM(Research In Motion) o The BlackBerry OS is tailor-made for business, with functionality taking a seat over personality or appearance. Its main focus is on messaging, email and other communication features. Media players and other entrainment-based applications are less-common for the device. Mobile Application Testing
  • 5. 3. TYPES OF APPLICATIONS A Smartphone is the one that has a vast range of applications (built-in) and supports plenty more from the external apps markets. These apps allow the user to do almost everything that previously required a Desktop PC or a laptop. Native App Web App Hybrid App Native App Native mobile applications are the ones that run directly from your handheld. These are mobile OS/platform based applications, which can be downloaded from the relevant mobile store and thereafter installed on the device. Native mobile apps provide fast performance and a high degree of reliability. They also have access to a phone’s various devices, such as its camera and address book. However, this type of app is expensive to develop because it is tied to one type of operating system, forcing the company that creates the app to make duplicate versions that work on other platforms Web App Web mobile applications are software programs that run directly from the web browser on mobile phones and tablets. These web-based mobile apps do not get installed on your handheld mobile device and are run on web-hosted servers. These web-based mobile applications can be developed on a single platform as they are not limited by the operating systems of your device. Web apps are not real apps; they are really websites that, in many ways, look and feel like native applications. They are run by a browser and typically written in HTML5 Hybrid App Hybrid Apps are like native apps, run on the device, and are written with web technologies (HTML5, CSS and JavaScript). Hybrid apps run inside a native container, and leverage the device’s browser engine (but not the browser) to render the HTML and process the JavaScript locally. Often, companies build hybrid apps as wrappers for an existing web page; in that way, they hope to get a presence in the app store, without spending significant effort for developing a different app. Hybrid apps are also popular because they allow cross-platform development: that is, the same HTML code components can be reused on different mobile operating systems, reducing significantly the development costs. Mobile Application Testing
  • 6. 4. TYPES OF TESTING FOR MOBILE APPLICATIONS  Usability testing This include text visibility in the selected language, navigation between screens, verification of functionality online/offline, feedback from interaction with the system i.e. downloaded application should prompt with message.  Compatibility Testing This entails validating the application for different mobile devices, OS versions, screen sizes and resolution as per the requirement, checking if integration server changes, checking for the app isolation with other apps on the device.  Interface Testing With diverse features and gestures of touch supported in smartphones, response time to user’s action should be a considerable point. Thus testing each screen, buttons, text inputs, navigation flows such as bookmarks, Facebook is very crucial.  Services Testing This includes checking the behavior of services. It includes checking if a service takes too long or is used offline, and also checking the behavior of the service when the server goes down.  Performance Testing This includes checking the server connection changes from Wi-Fi to 2G/3g or vice versa. Also, application response time, memory leaks, resources like GPRS, CAMERA etc.  Security Testing With increased usage of internet on the mobile devices, all data transfer requires security. This includes encryption/decryption techniques used for sensitive data communication, checks for multi used support, and checks for access to saved files stored in application.  Orientation Testing This checks the behavior of application in different orientation. A smartphone supports both landscape and portrait orientation. The change in orientationresults in change of the UI of the application. Height, width, breadth are factors that change with orientation. The application should respond to both.  Localization Testing With increase in globalization, survival becomes more challenging. The apps that support global languages are more likely to sustain the market changes and trends. Mobile Application Testing
  • 7. 5. QA CHALLENGES IN MOBILE APPLICATION TESTING The aim of application testing is to validate the quality and performance of the features offered. There are, however, some challenges faced which makes mobile testing a greater challenge vis-à-vis desktop and web-based application testing. Factors are:  Mobile Testing strategy for Native Application While native applications can provide a rich experience to the user, they also add some complexity to the lives of those tasked with testing them. Testing needs to ascertain that the app can be successfully downloaded to the device, executed on the device and interact with the supporting back content infrastructure. When updates are made its important to makesure that the application can be pushed out to and accepted by the end user. There’s a misperception that successful testing of app functionality on one device provides assurance across all others of the same operating system. To meet the challenge of testing for native mobile applications, it’s essential to test on the physical devices supported by the application. Steps to ensure backward compatibility with each older generation of the device is also expected. Consistency in executing the test plan is also a problem when limited to manual testing.  Mobile testing strategy for Web Application While testing mobile Web applications several challenges encountered are presented by the nature of the global, mobile Web. With Each challenge, different technology options are explored to manage issues and mitigate risk. Coming up with the right solutions requires an assessment of the advantages and disadvantages inherent in each of the testing options available and determining the technology that best suits the requirements. These mobile testing challenges include devices, network, and scripting.  Various Mobile Platforms and devices With the proliferation of devices such as iPhones, iPads, and a wide variety of Android devices, mobile application providers have to market to a variety of mobile platforms to reach their audience. However, because no industry-wide standards for operating systems or device hardware have been established, this is not a simple task.Mobile testing is challenging due to various compatibility issue as a mobile application can be deployed across devices which have different Operating Systems Versions of Operating System Manufacturers Keypad types such as virtual or hard keypad Mobile Application Testing
  • 8. Creating separate tests for each device and platform can quickly become costly and time intensive  Data Carrier Providers There are a lot of local data providers in market offering the best of their services in terms of data connectivity, bandwidth, and speed but still in any case the speed has to be fast. Whether it is a web or native application, both need speed and a good connectivity when the data download or upload is little huge but if the data is very low like in KBs then a low speed might work  Mobile Testing Tool Availability for Automation The tool used for desktop or web based testing do not work for mobile testing. When everyday a tester has to run a same set of Suites or cases on an application again and again then the need for automation arises. For mobile application testing, this has been a big question for testers as even today there are not many good tools available in market thatcan be used across platforms and for native as well as web application. Android and iOS have their own tools, which come bundled with their SDKs like UI Automation and Monkey Runner but then creating and maintaining two different tools is not recommendable.  Skilled QA for Automation Quality resource to automate the testing is a key point to be considered. With limited automation tools available in market, the need for experienced resources is rising. Automation team can assess the tools available in market for testing.  Change in Orientation With smartphones capturing a large part of the market, along came the big screen with touch options. This feature brought a whole new interface. The bigger screen supported all views like left portrait, right portrait, left landscape and right landscape. Application must support both landscape and portrait view. The appearance of application should be supported  Battery Life Mobile devices have a variable battery life based on the usage; various checks for application behavior when the device is shut down automatically must be performed. Since batteries found in mobiles are much smaller than in laptops, so battery consumption is an important factor to measure the Performance of the application.  Dependency on External Resources The internet connectivity is one prime factor that affects the performance of an application. Many applications depend on external resources like network connectivity. A major point to be considered with the connectivity is the application’s behavior to the bandwidth availability for connectivity. A check for such dependencies ought to be performed. Mobile Application Testing
  • 9. 6. MOBILE APPLICATION TESTING RISK MITIGATORS With so many aspects to keep in mind while testing, it becomes difficult to find a single effective solution. Following factors can be focused on to minimize the requirements of testing  Emulators All application can be tested on emulators without investing in mobile handsets. They are available free and can also be used for stress and performance testing. Various scenarios like bypassing the network, using live environments like modem can be tested on the emulators. It is a cost effective solution. Emulated devicesare relatively easier to manage. You can switch device types by simply loading a new device profile, and instantly you have a new device that presents itself to your mobile Web application in the same way that the real device would. And because the emulators run on more powerful PCs and servers and were designed with testing in mind, they are typically fully instrumented to capture detailed diagnostics about the protocols that go back and forth between client and server at the various levels of the stack.When you encounter an application fault, you will have the information to isolate and thus correct the problem. Emulated devices are thus cost effective, because a single platform with frequent updates of device profiles can be used to test every device on the market both today and tomorrow. However, the very nature of emulators and simulators means testing is occurring in an environment far removed from the real world, with a series of actions performed by a mouse and keyboard, not fingers on a touch screen. Mobile Application Testing
  • 10.  Mobile Cloud Computing solutions Mobile cloud computing environments can be used for deploying and testing a mobile application. In this new architecture, data processing and data storage happen outside of mobile devicesi.e. the task and data are kept on internet rather than on individual devices and providing on-demand access.  Real time Devices with Real Network With emulator availability to test the application, it is to be kept in mind that testing on a real device is always a different experience. Whenever required, a real time device with a real network should be available. This is unavoidable as mobile devices will be used by end users for running the application.  Automation tools to avoid Manual work Automating whatever possible is a key solution. Real device solutions that provide script and playback functionality can allow execution of more test cases with higher degree of consistency.This is a time saving option available for testing. Various tools are available in market for mobile application testing Mobile Application Testing
  • 12. 7. Conclusion The various challenges that are involved in testing a mobile application can be extenuated by adopting any combination of solutions provided here. Also, it is not a matter of choosing one tool or technique; there are simply too many compromises that must be made. Most likely it is seen that a combination of testing tools and techniques is required to meet quality requirements. It is purely requirement based, which technique may turn out to be the most effective one. There may be situations when a proven technique fails. About the Author Shaireen Dhingra Business Technology Analyst 3 years of experience in Functional Testing Experience on Mobile Application Development in Android and Windows OS 7 Mobile Application Testing