SlideShare a Scribd company logo
1 of 36
Mobile Application Testing by
Javed Ansari
1
Mobile Application Testing
By Javed Ansari
Mobile Application Testing by
Javed Ansari
2
What is Mobile Application Testing?
Why Mobile Application Testing?
Key Challenges in Enterprise Mobility Testing
Mobile Testing Methodologies/Approach
oLegacy Mobile Testing Approach
oBehavior Driven Testing (BDT) Approach
oCrowd Sourcing for Mobile Application Testing
Available ways for testing Mobile Applications
Types of Mobile Application Testing
Mobile Testing Using Emulators
UI Testing for Mobile Applications
Mobile Application UI Testing
Interruption Testing for Mobile Applications
Gesture Testing for Mobile Applications Continued..
Agenda
Mobile Application Testing by
Javed Ansari
3
Security Testing for Mobile Applications
Performance Testing for Mobile Applications
Popular Mobile Application Testing Tools
Remote Based Mobile Application Testing Tools Comparison
Desktop Based Mobile Application Testing Tools Comparison
Analyze and Choose what is best for you!
Conclusion
Thank you and Questions?
Agenda Continued..
Mobile Application Testing by
Javed Ansari
4
Mobile Application Testing is a process though which testing can be performed to verify the
functionality, Usability and Stability of the developed mobile applications.
What is Mobile Application Testing?
Mobile Application Testing by
Javed Ansari
5
Why Mobile Application Testing?
The face of IT is changing very fast in today’s world. Unlike a decade back when we had bulky desktops
with limited connectivity and that too were mostly getting used by IT dependent companies and end
users had only started to learn about the computers, now the users are becoming smart and have
adapted the new technologies in their daily life and believe me this trend is not going to stop until we
will bring whole universe at our figure tips.
When we talk about Mobile Applications, Testing becomes an important factor for a successful Mobile
Application Development due to the following factors.
Frequent Releases for Mobile Apps
Involvement of Various Devices
Involvement of Various OS
Technology
Convergence
Exponential
growth in Cloud
and Mobile
Computing
Complex and
Fragmented
Technologies
Global
Acceptance of
Mobility
Mobile Application Testing by
Javed Ansari
6
Key Challenges for Enterprise Mobility Testing
Various Device Hardwares
Various Operating Systems
Various Browsers
Various Networks
Mobile Application Testing by
Javed Ansari
7
Legacy Mobile Testing Approach
Test Environment Setup
Test Data Setup Test Setup Emulators Setup Tools Setup
Identifying Testing Tools
Device Emulators OS Emulators Actual Devices
Identifying Testing Parameters
Device Hardware Operating System Browsers Device Settings
Identifying Test Scenarios
Application
Functions
Device
Interactions
Usability Performance
Network
Impacts
Interruptions
Mobile Application Testing by
Javed Ansari
8
Behavior Driven Testing (BDT) Approach
Focus on requirements
Identifies different flows
application behavior.
Useful for automating
multichannel applications
Compatible with open
source tools
Behavior-driven testing is an iterative, incremental and agile
methodology.
Behavior-driven testing combines the general techniques and principles of
TDD and BDD
Mobile Application Testing by
Javed Ansari
9
Behavior Driven Testing (BDT) Approach Continued..
Advantages of BDT
• Usable domain language for team as well as BA.
• Never have to rewrite specs as behavior does not change
• Good fit for an application having big data sets and rarely changing test cases.
• Good usability and re-usability of test scripts and good test flow coverage.
• Data and code are separately managed and maintained.
• Easy to reproduce a failed scenario or case at developer-end.
BDT Supported Tools
• > Cucumber
• > Phone Monkey
• > Calabash
Mobile Application Testing by
Javed Ansari
10
Crowd Sourcing for Mobile Application Testing
Mobile Application Testing by
Javed Ansari
11
Advantages of Crowd sourced Mobile Testing
Higher Quality: The core testing team may not have all the resources to test the
software in different environments and in different situations as it may not be possible to
have all the resources to create different environments in which the software should be
tested.
Cost Control: It is cost effective, as the product company pays only for the valid bugs
reported. Usually time to test the software is comparably lesser, so it leads to better
productivity and thus is cheaper than hiring engineers, designers, and specialists.
Fast Market: 2-3 day test cycles instead of 2--‐3 weeks
High Complexity: The quality of mobile application testing is achieved by using different
devices, languages and locations. The pool of testers is diverse with variations in languages
as well as locales. This helps testing applications which are based on localization.
Mobile Application Testing by
Javed Ansari
12
Available ways for Mobile Application Testing
• An emulator is hardware or software or both that duplicates (or emulates) the
functions of one computer system (the guest) in another computer system (the host)
Using Emulators
•Having an account with a vendor that lets you access remote real devices at any time is very
handy.
Remote Real Devices in Cloud
• Emulators and remote, real-device solutions that support script & playback
functionality are time-savers that can allow you to execute more test cases with a
higher degree of consistency. Clearly, a solution that integrates real and emulated
devices is ideal.
Automate Wherever Possible
•If devices are not launched yet, a prototype of that device model is given by the device
manufacturer.
On Actual Device
Mobile Application Testing by
Javed Ansari
13
Types of Mobile Application Testing
Mobile
Testing
Sanity
Testing
Functional
Testing
User
Interface
Testing
Interruption
Testing
Security
Testing
Performance/
Stress testing
Field Testing
Mobile Application Testing by
Javed Ansari
14
Mobile Testing Using Emulators
When developing code for mobile devices, it’s always good to test it out on the targeted device(s).
However, it’s not always convenient or cost-effective to have access to the real thing. That’s where
mobile device emulators and simulators come into play.
Emulator
Mimics your
software and a
part hardware
Interruption ,
Network
Connectivity
testing and
Memory Leak
issues are not
possible.
Multiple
Device/Screen
Resolution
Support
Cross Platform
Testing is
possible
Mobile Application Testing by
Javed Ansari
15
UI Testing for Mobile Applications
Due to diversity in mobile hardware and platforms, testing programs need to incorporate GUI and
compatibility tests in addition to the standard functionality tests.
•Multiple OS versions and devices
•Different Screen Orientations
•Different Screen Setup
•Rendering of images and positioning of elements
User Experience
Usability
Positive
Interaction
Appealing
Design
Mobile Application Testing by
Javed Ansari
16
Mobile Application UI Testing – Scope and Coverage
Browser
Compatibility
Testing
Layout
Testing
Content
Testing
Look and Feel
Testing
Navigation
Testing
Instruction
Testing
Mobile Application Testing by
Javed Ansari
17
Test Factors
Layout Continues, Relative
Navigation Logical
Position of Icons Logical, Clearly Laid out, Functional
Different Display Format Suitable
Readability Look, Display Duration
Language Grammar, Spelling
Text display Alignment, Overlap, Text Wrapping
Touch Screen Gestures, Input
Motion Sensor Pan, Overturning
Error Messages, Warning Comprehensible
Screen Setup Logical, Duration
Action Chains Logical, Comprehensible
Progress Bar Timing
Performance Load Duration, Multitasking
Mobile Applications UI Testing Criteria
Mobile Application Testing by
Javed Ansari
18
Interruption Testing for Mobile Applications
Interruption testing is process to replicate abrupt(Unexpected) interrupt to the mobile application.
This can be achieved in various ways and techniques depending on the application under test.
Interrupt testing assures that the device native functionalities are intact and well functional even if the
application is running. Interrupt testing also assures the application robustness with the device native
features.
•Sources of Interruption
•Interruption thru Services
•Various Interruption testing Scenarios
•Achievements of Interruption Testing
Mobile Application Testing by
Javed Ansari
19
Different Sources of Interruption
Mobile Application Testing by
Javed Ansari
20
Various Scenarios for Interruption Testing
Call Establish/Accept/Reject Interruption
Camera Activated
Low Memory
Charger Effect
Battery Removal
Social Media Notifications
Alarm Clocks
Home Button/Application Minimize
Bluetooth
Calendar Events
Mobile Application Testing by
Javed Ansari
21
Achievements for Interruption Testing
Interruption testing cannot be done on Simulators & cloud, partial
support on emulators
Testing the application for interrupt handling is a very important
aspect of mobile testing as these interrupts are a very common
phenomenon that may occur anytime during the application run.
The interrupts must be handled properly so that they do not cause
interruption in the application functionality. The application must be
in a suspended state during the interruption but must resume
continuing its normal function after the interruption is over. The
hardware interrupts are on the highest priority and the software
interrupts can be prioritized accordingly.
Mobile Application Testing by
Javed Ansari
22
Gesture Testing
A Gesture is a pen movement or combination of movements that match the patterns
defined by a recognizer, and is assigned special behavior within an application in order to
implement the behavior assigned to the gesture. Gestures provide a powerful mechanism
for making your application truly gesture centric.
In addition to interpreting Strokes as written characters, a recognizer can return results
that specify the user has entered a Gesture. A gesture can be a hand/face movement, Ink
stroke or pen movement that matches the set of glyphs defined by a recognizer. These
glyphs are assigned special behavioral meaning in the application. When a Gesture object
is recognized it triggers an event that you can handle in your application.
Mobile Application Testing by
Javed Ansari
23
Gesture Sensing Technologies
 Gesture interaction validation primarily dealt with application response with various
inputs like tap, touch, squeeze ,pinch.
The thought is to see a certain swipe/pinch/zoom etc. movement will work against
various UI changes. When someone makes this gesture what exactly happens in an app
across platforms.
Mobile Application Testing by
Javed Ansari
24
Security Testing for Mobile Applications
The enterprise mobile applications extend corporate networks beyond the perimeter devices and thus
potentially expose these organizations to new types of security threats.
•Location-Independent (mobile)
•Consumerization
•Different attackers
•Identify different penetration tests
•Focus on functionality and design rather than security
Vulnerability
Analysis
Threat
Modeling
Intelligence
Gathering
Mobile Application Testing by
Javed Ansari
25
Environmental Analysis
 Focus on the company behind the app and their business case and the relating stakeholders
 Analyze internal processes and structures
Architectural Analysis
 App (network interfaces, used data, communication with other
 Resources, session management, jailbreak/rooting detection, …)
 Runtime environment (MDM, jailbreak/rooting, OS version)
 Backend services (application server, databases, firewall, …)
Security Testing - Intelligence Gathering
Mobile Application Testing by
Javed Ansari
26
Identifying threats for the app - specific or
prepared threats (e. g. OWASP Top 10)
Should be done already in the development
Risk rating e. g. with OWASP Risk Rating
Developing countermeasures e. g. with best
practices or developers guides
Differences to conventional process
Most software testing processes do not include
Threat Modeling
Threat Modeling makes the complete process
more traceable and efficient for all participants
Security Testing - Thread Modeling
Mobile Application Testing by
Javed Ansari
27
Identifying vulnerabilities in the app by previously created test cases
using the following methods.
Security Testing - Vulnerability Analysis
Mobile Application Testing by
Javed Ansari
28
Leading enterprises in various industries depend on mobile
applications to support their core business activities. Ex. Mobile
banking
Failure to provide optimal user experience in the wake of
increased user volume may lead to service failures, unhappy
customers and loss in company’s business and reputation
Without performance testing, it may not be possible to anticipate
real world scenario and the infrastructure required to support peak
loads
Performance Testing for Mobile Applications
Mobile Application Testing by
Javed Ansari
29
Performance Testing Types and Challenges
Limited Bandwidth
Network Latency
Packet loss
Power Consumption
Performance
Testing
Load
Testing
Endurance
Testing
Volume
Testing
Scalability
Testing
Spike
Testing
Stress
Testing
Mobile Application Testing by
Javed Ansari
30
Mobile Application Performance Testing Tools
Report Analyzer
Test Case
Controller
Scenario
Generator
JMeter Master
Application
Under Test
JMeter
Slave
 It consists of a Master system (the JMeter GUI)
which controls remote slave systems running
JMeter-server instances which concurrently
imposes load on a target server, network or
object under test by emulating traffic to and
from client software.
Test both Browser based and Native
Mobile applications using most advanced
Network behavior and Service
Virtualization.
Mobile Application Testing by
Javed Ansari
31
Popular Mobile Application Testing Tools
Remote
Based
Paid
Perfecto Mobile
Device Anywhere
Desktop
Based
Paid
EggPlant
SeeTest
JamoSolutions
Squish
FoneMonkey
Open
Source
Robotium
Sikuli
MonkeyTalk
Robot
Framework
Mobile Application Testing by
Javed Ansari
32
Remote Based Mobile Application Testing Tools Comparison
Functionality/Tools Perfecto Mobile Keynote Device Anywhere
Product Installation Method Web Based Downloadable Software
App Clean UP Possible Not Possible
Cloud(Global) Public
Private
Device Reservation Support
Public
Private
Supported OS iOS,
Android
BlackBerry
Windows Phone as well as Emulators support
iOS
Android
BlackBerry
Windows Phone as well as Emulators support
Automation 1. Visual Objects (OCR)
2. Real (Native) objects
3. Web Objects/HTML5 (DOM)
4. Script Portability
5. Sharing test sessions live (Video/screenshots)
6. Integrations (HP)
7. Integrations (IBM)
1. Visual Objects (OCR)
2. Web Objects/HTML5 (DOM)
3. Sharing test sessions live (Video/screenshots)
4. Integrations (HP)
5. Integrations (IBM)
ALM Integrations 1. Testing (Manual/Automation)
2. Performance testing
3. Monitoring
1. Testing (Manual/Automation)
2. Performance testing
3. Monitoring
Mobile Monitoring & Performance 1. Real device support
2. Rich reporting suite
3. Integration with ALM Tools
4. Saas Delivery model
5. Performance and network testing
1. Real device support
2. Rich reporting suite
3. Integration with ALM Tools
4. Saas Delivery model
5. Performance and network testing
3
rd
Party API connectivity Perfecto has open API support (Restful API support) No API Support
Mobile Application Testing by
Javed Ansari
33
Desktop Based Mobile Application Testing Tools Comparison
Functionality/Tools Squish GUI Testing M-eux Test Egg Plant Robotium Sikuli MonkeyTalk
Company FrogLogic Jamo Solutions Test Plant Google Code Projects GitHub Project Gorilla Logic
Testing Areas Covered Cross Browser Testing
GUI Testing
Web testing
Mobile Testing
GUI Testing
Mobile Testing
GUI Testing,
Image Based Testing
Web Testing
Performance Analysis
Mobile Testing
GUI Testing and
Mobile Testing
GUI Testing and
Image Based Testing
Mobile Testing
Supported Languages Python
JavaScript
Ruby
Perl
Tcl
Squish specific script
APIs for a lot of
convenience
Visual Studio,
Eclipse
M-eux specific Script.
Visual Design Eclipse Python language level 2.7
(supported by Jython)
Ruby language level 1.9 and
2.0 (supported by JRuby)
Java Programming
MonkeyTalk
Supported OS iOS Cocoa Touch
Android
Web/HTML5/AJAX/Fl
ex
Android,
BalcBerry,
iOS and
Windows
Android,
BalcBerry,
iOS and
Windows
Android Android and
iOS
Android and
iOS
License Paid Paid Paid Free Free Free
Mobile Application Testing by
Javed Ansari
34
Analyze and Choose what is best for you!
Cost
Benefit
Analysis
•Purpose of the Application
•Nature of Business
•Current and forecast
comparisons
Scope
Based
Decisions
•Device Variant Support
•Native Application or
Web Based Application
•OS Variant Support
Features
Based
Decisions
•Work on
Emulator/Device
•Integration to Test
Management Tools
•Areas to be Automated
Regression
Testing
Scope and
Complexity
of the
System
•Identifying the Core
Functionality
•Identifying the frequently
used functionality
•Indentifying the Business
impacting functionalities
Infrastructure
Decisions
• Could Based/ Standalone
• Network Infrastructure
• Mobile Features to be
used
Timelines of
the Project
•Purpose of the Application
•Special Period Business
App
•Enterprise App
Mobile Application Testing by
Javed Ansari
35
The significant challenges and risks involved in mobile application development may
reduce the quality of the mobile applications. These risks and challenges can be mitigated
by adopting the various testing type and techniques outlined in this presentation.
The importance of testing for mobile applications can not be over sighted before making
them ready for production. An application with defects can hurt the business and the
company reputation.
Conclusion
Mobile Application Testing by
Javed Ansari
36

More Related Content

What's hot

Basic Guide For Mobile Application Testing
Basic Guide For Mobile Application TestingBasic Guide For Mobile Application Testing
Basic Guide For Mobile Application TestingSourabh Kasliwal
 
Mobile Automation with Appium
Mobile Automation with AppiumMobile Automation with Appium
Mobile Automation with AppiumManoj Kumar Kumar
 
Mobile application testing
Mobile application testingMobile application testing
Mobile application testingSoftheme
 
Mobile Testing Service Desk_Own.ppt
Mobile Testing Service Desk_Own.pptMobile Testing Service Desk_Own.ppt
Mobile Testing Service Desk_Own.pptQA Programmer
 
Automation Testing With Appium
Automation Testing With AppiumAutomation Testing With Appium
Automation Testing With AppiumKnoldus Inc.
 
Mobile Testing with Appium
Mobile Testing with AppiumMobile Testing with Appium
Mobile Testing with AppiumKnoldus Inc.
 
Mobile Application Testing
Mobile Application TestingMobile Application Testing
Mobile Application TestingSWAAM Tech
 
Introduction To Mobile-Automation
Introduction To Mobile-AutomationIntroduction To Mobile-Automation
Introduction To Mobile-AutomationMindfire Solutions
 
Getting started with appium
Getting started with appiumGetting started with appium
Getting started with appiumPratik Patel
 
Appium Presentation
Appium Presentation Appium Presentation
Appium Presentation OmarUsman6
 
Android & iOS Automation Using Appium
Android & iOS Automation Using AppiumAndroid & iOS Automation Using Appium
Android & iOS Automation Using AppiumMindfire Solutions
 
Appium: Automation for Mobile Apps
Appium: Automation for Mobile AppsAppium: Automation for Mobile Apps
Appium: Automation for Mobile AppsSauce Labs
 
Automation With Appium
Automation With AppiumAutomation With Appium
Automation With AppiumKnoldus Inc.
 
Mobile Application Testing
Mobile Application Testing Mobile Application Testing
Mobile Application Testing Shivaraj R
 
Native automation tooling for mobile application testing.pptx
Native automation tooling for mobile application testing.pptxNative automation tooling for mobile application testing.pptx
Native automation tooling for mobile application testing.pptxMesut Günes
 

What's hot (20)

Basic Guide For Mobile Application Testing
Basic Guide For Mobile Application TestingBasic Guide For Mobile Application Testing
Basic Guide For Mobile Application Testing
 
Mobile App Testing Strategy
Mobile App Testing StrategyMobile App Testing Strategy
Mobile App Testing Strategy
 
Mobile App Testing
Mobile App TestingMobile App Testing
Mobile App Testing
 
Mobile Automation with Appium
Mobile Automation with AppiumMobile Automation with Appium
Mobile Automation with Appium
 
Mobile application testing
Mobile application testingMobile application testing
Mobile application testing
 
Mobile Testing Service Desk_Own.ppt
Mobile Testing Service Desk_Own.pptMobile Testing Service Desk_Own.ppt
Mobile Testing Service Desk_Own.ppt
 
Automation Testing With Appium
Automation Testing With AppiumAutomation Testing With Appium
Automation Testing With Appium
 
Mobile Testing with Appium
Mobile Testing with AppiumMobile Testing with Appium
Mobile Testing with Appium
 
Mobile Application Testing
Mobile Application TestingMobile Application Testing
Mobile Application Testing
 
iOS Application Testing
iOS Application TestingiOS Application Testing
iOS Application Testing
 
Introduction To Mobile-Automation
Introduction To Mobile-AutomationIntroduction To Mobile-Automation
Introduction To Mobile-Automation
 
Getting started with appium
Getting started with appiumGetting started with appium
Getting started with appium
 
Appium Presentation
Appium Presentation Appium Presentation
Appium Presentation
 
Android & iOS Automation Using Appium
Android & iOS Automation Using AppiumAndroid & iOS Automation Using Appium
Android & iOS Automation Using Appium
 
Appium: Automation for Mobile Apps
Appium: Automation for Mobile AppsAppium: Automation for Mobile Apps
Appium: Automation for Mobile Apps
 
Mobile application testing
Mobile application testingMobile application testing
Mobile application testing
 
Appium ppt
Appium pptAppium ppt
Appium ppt
 
Automation With Appium
Automation With AppiumAutomation With Appium
Automation With Appium
 
Mobile Application Testing
Mobile Application Testing Mobile Application Testing
Mobile Application Testing
 
Native automation tooling for mobile application testing.pptx
Native automation tooling for mobile application testing.pptxNative automation tooling for mobile application testing.pptx
Native automation tooling for mobile application testing.pptx
 

Viewers also liked

Mobile app testing
Mobile app testingMobile app testing
Mobile app testingBugRaptors
 
Evaluación de usabilidad de aplicaciones para dispositivos móviles dotados de...
Evaluación de usabilidad de aplicaciones para dispositivos móviles dotados de...Evaluación de usabilidad de aplicaciones para dispositivos móviles dotados de...
Evaluación de usabilidad de aplicaciones para dispositivos móviles dotados de...Alejandro Zappala Delgado
 
tipos de pruebas.
tipos de pruebas.tipos de pruebas.
tipos de pruebas.Juan Ravi
 
Mobile performance testing
Mobile performance testingMobile performance testing
Mobile performance testinghunz
 
Mobile Device Client Application Performance Testing
Mobile Device Client Application Performance Testing Mobile Device Client Application Performance Testing
Mobile Device Client Application Performance Testing XBOSoft
 
Mobile app testing services
Mobile app testing servicesMobile app testing services
Mobile app testing servicesRichard_S
 
Mobile App Testing
Mobile App TestingMobile App Testing
Mobile App TestingDuy Tan Geek
 
Mobile Application Security Testing, Testing for Mobility App | www.idexcel.com
Mobile Application Security Testing, Testing for Mobility App | www.idexcel.comMobile Application Security Testing, Testing for Mobility App | www.idexcel.com
Mobile Application Security Testing, Testing for Mobility App | www.idexcel.comIdexcel Technologies
 
Desarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por PruebasDesarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por Pruebas.. ..
 

Viewers also liked (11)

Mobile app testing
Mobile app testingMobile app testing
Mobile app testing
 
Evaluación de usabilidad de aplicaciones para dispositivos móviles dotados de...
Evaluación de usabilidad de aplicaciones para dispositivos móviles dotados de...Evaluación de usabilidad de aplicaciones para dispositivos móviles dotados de...
Evaluación de usabilidad de aplicaciones para dispositivos móviles dotados de...
 
tipos de pruebas.
tipos de pruebas.tipos de pruebas.
tipos de pruebas.
 
Mobile performance testing
Mobile performance testingMobile performance testing
Mobile performance testing
 
Mobile Device Client Application Performance Testing
Mobile Device Client Application Performance Testing Mobile Device Client Application Performance Testing
Mobile Device Client Application Performance Testing
 
Mobile app testing services
Mobile app testing servicesMobile app testing services
Mobile app testing services
 
Mobile App Testing Best Practices
Mobile App Testing Best PracticesMobile App Testing Best Practices
Mobile App Testing Best Practices
 
Mobile App Testing
Mobile App TestingMobile App Testing
Mobile App Testing
 
Mobile Application Security Testing, Testing for Mobility App | www.idexcel.com
Mobile Application Security Testing, Testing for Mobility App | www.idexcel.comMobile Application Security Testing, Testing for Mobility App | www.idexcel.com
Mobile Application Security Testing, Testing for Mobility App | www.idexcel.com
 
Mobile App Testing
Mobile App TestingMobile App Testing
Mobile App Testing
 
Desarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por PruebasDesarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por Pruebas
 

Similar to Mobile Application Testing by Javed Ansari

The Essentials of Mobile App Testing and Monitoring
The Essentials of Mobile App Testing and MonitoringThe Essentials of Mobile App Testing and Monitoring
The Essentials of Mobile App Testing and MonitoringMobilePundits
 
Mobile Application Testing - White Paper
Mobile Application Testing - White PaperMobile Application Testing - White Paper
Mobile Application Testing - White PaperJade Global
 
Mobile Testing Tools 101
Mobile Testing Tools 101Mobile Testing Tools 101
Mobile Testing Tools 101TechWell
 
HienVo_Mobile Testing_v.1.2
HienVo_Mobile Testing_v.1.2HienVo_Mobile Testing_v.1.2
HienVo_Mobile Testing_v.1.2Hien Vo
 
Mobile application-testing for shanethatech
Mobile application-testing for shanethatechMobile application-testing for shanethatech
Mobile application-testing for shanethatechshanethatech
 
App Testing SEO Expert Bangladesh LTD
App Testing SEO Expert Bangladesh LTDApp Testing SEO Expert Bangladesh LTD
App Testing SEO Expert Bangladesh LTDTasnim Jahan
 
A Complete Guide to Mobile App Testing Types.pdf
A Complete Guide to Mobile App Testing Types.pdfA Complete Guide to Mobile App Testing Types.pdf
A Complete Guide to Mobile App Testing Types.pdfpCloudy
 
Experitest-Infosys Co-Webinar on Mobile Continuous Integration
Experitest-Infosys Co-Webinar on Mobile Continuous IntegrationExperitest-Infosys Co-Webinar on Mobile Continuous Integration
Experitest-Infosys Co-Webinar on Mobile Continuous IntegrationExperitest
 
Challenges In Mobile App Testing and Their Solution.pdf
Challenges In Mobile App Testing and Their Solution.pdfChallenges In Mobile App Testing and Their Solution.pdf
Challenges In Mobile App Testing and Their Solution.pdfpCloudy
 
Choosing the Right Testing Strategy to Scale up Mobile App Testing.pdf
Choosing the Right Testing Strategy to Scale up Mobile App Testing.pdfChoosing the Right Testing Strategy to Scale up Mobile App Testing.pdf
Choosing the Right Testing Strategy to Scale up Mobile App Testing.pdfpCloudy
 
Mobile testing
Mobile testingMobile testing
Mobile testingQualitest
 
Mobile app testing
Mobile app testingMobile app testing
Mobile app testingsanpalan
 
Mobile testing
Mobile testingMobile testing
Mobile testingsanpalan
 
Experitest & Capgemini Co-webinar -
Experitest & Capgemini Co-webinar -Experitest & Capgemini Co-webinar -
Experitest & Capgemini Co-webinar -Experitest
 
What Why and How of Compatibility Testing
What Why and How of Compatibility TestingWhat Why and How of Compatibility Testing
What Why and How of Compatibility TestingKiwiQA
 
App Development Testing, App Testing Tools and Technologies 2023
App Development Testing, App Testing Tools and Technologies 2023App Development Testing, App Testing Tools and Technologies 2023
App Development Testing, App Testing Tools and Technologies 2023XDuce Corporation
 

Similar to Mobile Application Testing by Javed Ansari (20)

The Essentials of Mobile App Testing and Monitoring
The Essentials of Mobile App Testing and MonitoringThe Essentials of Mobile App Testing and Monitoring
The Essentials of Mobile App Testing and Monitoring
 
Mobile Application Testing - White Paper
Mobile Application Testing - White PaperMobile Application Testing - White Paper
Mobile Application Testing - White Paper
 
Mobile Testing Tools 101
Mobile Testing Tools 101Mobile Testing Tools 101
Mobile Testing Tools 101
 
HienVo_Mobile Testing_v.1.2
HienVo_Mobile Testing_v.1.2HienVo_Mobile Testing_v.1.2
HienVo_Mobile Testing_v.1.2
 
SynapseIndia mobile apps
SynapseIndia mobile appsSynapseIndia mobile apps
SynapseIndia mobile apps
 
Mobile application-testing for shanethatech
Mobile application-testing for shanethatechMobile application-testing for shanethatech
Mobile application-testing for shanethatech
 
App Testing SEO Expert Bangladesh LTD
App Testing SEO Expert Bangladesh LTDApp Testing SEO Expert Bangladesh LTD
App Testing SEO Expert Bangladesh LTD
 
A Complete Guide to Mobile App Testing Types.pdf
A Complete Guide to Mobile App Testing Types.pdfA Complete Guide to Mobile App Testing Types.pdf
A Complete Guide to Mobile App Testing Types.pdf
 
Experitest-Infosys Co-Webinar on Mobile Continuous Integration
Experitest-Infosys Co-Webinar on Mobile Continuous IntegrationExperitest-Infosys Co-Webinar on Mobile Continuous Integration
Experitest-Infosys Co-Webinar on Mobile Continuous Integration
 
Challenges In Mobile App Testing and Their Solution.pdf
Challenges In Mobile App Testing and Their Solution.pdfChallenges In Mobile App Testing and Their Solution.pdf
Challenges In Mobile App Testing and Their Solution.pdf
 
Mobile testing
Mobile testingMobile testing
Mobile testing
 
Choosing the Right Testing Strategy to Scale up Mobile App Testing.pdf
Choosing the Right Testing Strategy to Scale up Mobile App Testing.pdfChoosing the Right Testing Strategy to Scale up Mobile App Testing.pdf
Choosing the Right Testing Strategy to Scale up Mobile App Testing.pdf
 
Mobile testing
Mobile testingMobile testing
Mobile testing
 
Mobile app testing
Mobile app testingMobile app testing
Mobile app testing
 
Mobile testing
Mobile testingMobile testing
Mobile testing
 
Experitest & Capgemini Co-webinar -
Experitest & Capgemini Co-webinar -Experitest & Capgemini Co-webinar -
Experitest & Capgemini Co-webinar -
 
Software testing
Software testingSoftware testing
Software testing
 
What Why and How of Compatibility Testing
What Why and How of Compatibility TestingWhat Why and How of Compatibility Testing
What Why and How of Compatibility Testing
 
Mobile App Security Testing -2
Mobile App Security Testing -2Mobile App Security Testing -2
Mobile App Security Testing -2
 
App Development Testing, App Testing Tools and Technologies 2023
App Development Testing, App Testing Tools and Technologies 2023App Development Testing, App Testing Tools and Technologies 2023
App Development Testing, App Testing Tools and Technologies 2023
 

Recently uploaded

Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfngoud9212
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Neo4j
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfjimielynbastida
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 

Recently uploaded (20)

Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdf
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdf
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 

Mobile Application Testing by Javed Ansari

  • 1. Mobile Application Testing by Javed Ansari 1 Mobile Application Testing By Javed Ansari
  • 2. Mobile Application Testing by Javed Ansari 2 What is Mobile Application Testing? Why Mobile Application Testing? Key Challenges in Enterprise Mobility Testing Mobile Testing Methodologies/Approach oLegacy Mobile Testing Approach oBehavior Driven Testing (BDT) Approach oCrowd Sourcing for Mobile Application Testing Available ways for testing Mobile Applications Types of Mobile Application Testing Mobile Testing Using Emulators UI Testing for Mobile Applications Mobile Application UI Testing Interruption Testing for Mobile Applications Gesture Testing for Mobile Applications Continued.. Agenda
  • 3. Mobile Application Testing by Javed Ansari 3 Security Testing for Mobile Applications Performance Testing for Mobile Applications Popular Mobile Application Testing Tools Remote Based Mobile Application Testing Tools Comparison Desktop Based Mobile Application Testing Tools Comparison Analyze and Choose what is best for you! Conclusion Thank you and Questions? Agenda Continued..
  • 4. Mobile Application Testing by Javed Ansari 4 Mobile Application Testing is a process though which testing can be performed to verify the functionality, Usability and Stability of the developed mobile applications. What is Mobile Application Testing?
  • 5. Mobile Application Testing by Javed Ansari 5 Why Mobile Application Testing? The face of IT is changing very fast in today’s world. Unlike a decade back when we had bulky desktops with limited connectivity and that too were mostly getting used by IT dependent companies and end users had only started to learn about the computers, now the users are becoming smart and have adapted the new technologies in their daily life and believe me this trend is not going to stop until we will bring whole universe at our figure tips. When we talk about Mobile Applications, Testing becomes an important factor for a successful Mobile Application Development due to the following factors. Frequent Releases for Mobile Apps Involvement of Various Devices Involvement of Various OS Technology Convergence Exponential growth in Cloud and Mobile Computing Complex and Fragmented Technologies Global Acceptance of Mobility
  • 6. Mobile Application Testing by Javed Ansari 6 Key Challenges for Enterprise Mobility Testing Various Device Hardwares Various Operating Systems Various Browsers Various Networks
  • 7. Mobile Application Testing by Javed Ansari 7 Legacy Mobile Testing Approach Test Environment Setup Test Data Setup Test Setup Emulators Setup Tools Setup Identifying Testing Tools Device Emulators OS Emulators Actual Devices Identifying Testing Parameters Device Hardware Operating System Browsers Device Settings Identifying Test Scenarios Application Functions Device Interactions Usability Performance Network Impacts Interruptions
  • 8. Mobile Application Testing by Javed Ansari 8 Behavior Driven Testing (BDT) Approach Focus on requirements Identifies different flows application behavior. Useful for automating multichannel applications Compatible with open source tools Behavior-driven testing is an iterative, incremental and agile methodology. Behavior-driven testing combines the general techniques and principles of TDD and BDD
  • 9. Mobile Application Testing by Javed Ansari 9 Behavior Driven Testing (BDT) Approach Continued.. Advantages of BDT • Usable domain language for team as well as BA. • Never have to rewrite specs as behavior does not change • Good fit for an application having big data sets and rarely changing test cases. • Good usability and re-usability of test scripts and good test flow coverage. • Data and code are separately managed and maintained. • Easy to reproduce a failed scenario or case at developer-end. BDT Supported Tools • > Cucumber • > Phone Monkey • > Calabash
  • 10. Mobile Application Testing by Javed Ansari 10 Crowd Sourcing for Mobile Application Testing
  • 11. Mobile Application Testing by Javed Ansari 11 Advantages of Crowd sourced Mobile Testing Higher Quality: The core testing team may not have all the resources to test the software in different environments and in different situations as it may not be possible to have all the resources to create different environments in which the software should be tested. Cost Control: It is cost effective, as the product company pays only for the valid bugs reported. Usually time to test the software is comparably lesser, so it leads to better productivity and thus is cheaper than hiring engineers, designers, and specialists. Fast Market: 2-3 day test cycles instead of 2--‐3 weeks High Complexity: The quality of mobile application testing is achieved by using different devices, languages and locations. The pool of testers is diverse with variations in languages as well as locales. This helps testing applications which are based on localization.
  • 12. Mobile Application Testing by Javed Ansari 12 Available ways for Mobile Application Testing • An emulator is hardware or software or both that duplicates (or emulates) the functions of one computer system (the guest) in another computer system (the host) Using Emulators •Having an account with a vendor that lets you access remote real devices at any time is very handy. Remote Real Devices in Cloud • Emulators and remote, real-device solutions that support script & playback functionality are time-savers that can allow you to execute more test cases with a higher degree of consistency. Clearly, a solution that integrates real and emulated devices is ideal. Automate Wherever Possible •If devices are not launched yet, a prototype of that device model is given by the device manufacturer. On Actual Device
  • 13. Mobile Application Testing by Javed Ansari 13 Types of Mobile Application Testing Mobile Testing Sanity Testing Functional Testing User Interface Testing Interruption Testing Security Testing Performance/ Stress testing Field Testing
  • 14. Mobile Application Testing by Javed Ansari 14 Mobile Testing Using Emulators When developing code for mobile devices, it’s always good to test it out on the targeted device(s). However, it’s not always convenient or cost-effective to have access to the real thing. That’s where mobile device emulators and simulators come into play. Emulator Mimics your software and a part hardware Interruption , Network Connectivity testing and Memory Leak issues are not possible. Multiple Device/Screen Resolution Support Cross Platform Testing is possible
  • 15. Mobile Application Testing by Javed Ansari 15 UI Testing for Mobile Applications Due to diversity in mobile hardware and platforms, testing programs need to incorporate GUI and compatibility tests in addition to the standard functionality tests. •Multiple OS versions and devices •Different Screen Orientations •Different Screen Setup •Rendering of images and positioning of elements User Experience Usability Positive Interaction Appealing Design
  • 16. Mobile Application Testing by Javed Ansari 16 Mobile Application UI Testing – Scope and Coverage Browser Compatibility Testing Layout Testing Content Testing Look and Feel Testing Navigation Testing Instruction Testing
  • 17. Mobile Application Testing by Javed Ansari 17 Test Factors Layout Continues, Relative Navigation Logical Position of Icons Logical, Clearly Laid out, Functional Different Display Format Suitable Readability Look, Display Duration Language Grammar, Spelling Text display Alignment, Overlap, Text Wrapping Touch Screen Gestures, Input Motion Sensor Pan, Overturning Error Messages, Warning Comprehensible Screen Setup Logical, Duration Action Chains Logical, Comprehensible Progress Bar Timing Performance Load Duration, Multitasking Mobile Applications UI Testing Criteria
  • 18. Mobile Application Testing by Javed Ansari 18 Interruption Testing for Mobile Applications Interruption testing is process to replicate abrupt(Unexpected) interrupt to the mobile application. This can be achieved in various ways and techniques depending on the application under test. Interrupt testing assures that the device native functionalities are intact and well functional even if the application is running. Interrupt testing also assures the application robustness with the device native features. •Sources of Interruption •Interruption thru Services •Various Interruption testing Scenarios •Achievements of Interruption Testing
  • 19. Mobile Application Testing by Javed Ansari 19 Different Sources of Interruption
  • 20. Mobile Application Testing by Javed Ansari 20 Various Scenarios for Interruption Testing Call Establish/Accept/Reject Interruption Camera Activated Low Memory Charger Effect Battery Removal Social Media Notifications Alarm Clocks Home Button/Application Minimize Bluetooth Calendar Events
  • 21. Mobile Application Testing by Javed Ansari 21 Achievements for Interruption Testing Interruption testing cannot be done on Simulators & cloud, partial support on emulators Testing the application for interrupt handling is a very important aspect of mobile testing as these interrupts are a very common phenomenon that may occur anytime during the application run. The interrupts must be handled properly so that they do not cause interruption in the application functionality. The application must be in a suspended state during the interruption but must resume continuing its normal function after the interruption is over. The hardware interrupts are on the highest priority and the software interrupts can be prioritized accordingly.
  • 22. Mobile Application Testing by Javed Ansari 22 Gesture Testing A Gesture is a pen movement or combination of movements that match the patterns defined by a recognizer, and is assigned special behavior within an application in order to implement the behavior assigned to the gesture. Gestures provide a powerful mechanism for making your application truly gesture centric. In addition to interpreting Strokes as written characters, a recognizer can return results that specify the user has entered a Gesture. A gesture can be a hand/face movement, Ink stroke or pen movement that matches the set of glyphs defined by a recognizer. These glyphs are assigned special behavioral meaning in the application. When a Gesture object is recognized it triggers an event that you can handle in your application.
  • 23. Mobile Application Testing by Javed Ansari 23 Gesture Sensing Technologies  Gesture interaction validation primarily dealt with application response with various inputs like tap, touch, squeeze ,pinch. The thought is to see a certain swipe/pinch/zoom etc. movement will work against various UI changes. When someone makes this gesture what exactly happens in an app across platforms.
  • 24. Mobile Application Testing by Javed Ansari 24 Security Testing for Mobile Applications The enterprise mobile applications extend corporate networks beyond the perimeter devices and thus potentially expose these organizations to new types of security threats. •Location-Independent (mobile) •Consumerization •Different attackers •Identify different penetration tests •Focus on functionality and design rather than security Vulnerability Analysis Threat Modeling Intelligence Gathering
  • 25. Mobile Application Testing by Javed Ansari 25 Environmental Analysis  Focus on the company behind the app and their business case and the relating stakeholders  Analyze internal processes and structures Architectural Analysis  App (network interfaces, used data, communication with other  Resources, session management, jailbreak/rooting detection, …)  Runtime environment (MDM, jailbreak/rooting, OS version)  Backend services (application server, databases, firewall, …) Security Testing - Intelligence Gathering
  • 26. Mobile Application Testing by Javed Ansari 26 Identifying threats for the app - specific or prepared threats (e. g. OWASP Top 10) Should be done already in the development Risk rating e. g. with OWASP Risk Rating Developing countermeasures e. g. with best practices or developers guides Differences to conventional process Most software testing processes do not include Threat Modeling Threat Modeling makes the complete process more traceable and efficient for all participants Security Testing - Thread Modeling
  • 27. Mobile Application Testing by Javed Ansari 27 Identifying vulnerabilities in the app by previously created test cases using the following methods. Security Testing - Vulnerability Analysis
  • 28. Mobile Application Testing by Javed Ansari 28 Leading enterprises in various industries depend on mobile applications to support their core business activities. Ex. Mobile banking Failure to provide optimal user experience in the wake of increased user volume may lead to service failures, unhappy customers and loss in company’s business and reputation Without performance testing, it may not be possible to anticipate real world scenario and the infrastructure required to support peak loads Performance Testing for Mobile Applications
  • 29. Mobile Application Testing by Javed Ansari 29 Performance Testing Types and Challenges Limited Bandwidth Network Latency Packet loss Power Consumption Performance Testing Load Testing Endurance Testing Volume Testing Scalability Testing Spike Testing Stress Testing
  • 30. Mobile Application Testing by Javed Ansari 30 Mobile Application Performance Testing Tools Report Analyzer Test Case Controller Scenario Generator JMeter Master Application Under Test JMeter Slave  It consists of a Master system (the JMeter GUI) which controls remote slave systems running JMeter-server instances which concurrently imposes load on a target server, network or object under test by emulating traffic to and from client software. Test both Browser based and Native Mobile applications using most advanced Network behavior and Service Virtualization.
  • 31. Mobile Application Testing by Javed Ansari 31 Popular Mobile Application Testing Tools Remote Based Paid Perfecto Mobile Device Anywhere Desktop Based Paid EggPlant SeeTest JamoSolutions Squish FoneMonkey Open Source Robotium Sikuli MonkeyTalk Robot Framework
  • 32. Mobile Application Testing by Javed Ansari 32 Remote Based Mobile Application Testing Tools Comparison Functionality/Tools Perfecto Mobile Keynote Device Anywhere Product Installation Method Web Based Downloadable Software App Clean UP Possible Not Possible Cloud(Global) Public Private Device Reservation Support Public Private Supported OS iOS, Android BlackBerry Windows Phone as well as Emulators support iOS Android BlackBerry Windows Phone as well as Emulators support Automation 1. Visual Objects (OCR) 2. Real (Native) objects 3. Web Objects/HTML5 (DOM) 4. Script Portability 5. Sharing test sessions live (Video/screenshots) 6. Integrations (HP) 7. Integrations (IBM) 1. Visual Objects (OCR) 2. Web Objects/HTML5 (DOM) 3. Sharing test sessions live (Video/screenshots) 4. Integrations (HP) 5. Integrations (IBM) ALM Integrations 1. Testing (Manual/Automation) 2. Performance testing 3. Monitoring 1. Testing (Manual/Automation) 2. Performance testing 3. Monitoring Mobile Monitoring & Performance 1. Real device support 2. Rich reporting suite 3. Integration with ALM Tools 4. Saas Delivery model 5. Performance and network testing 1. Real device support 2. Rich reporting suite 3. Integration with ALM Tools 4. Saas Delivery model 5. Performance and network testing 3 rd Party API connectivity Perfecto has open API support (Restful API support) No API Support
  • 33. Mobile Application Testing by Javed Ansari 33 Desktop Based Mobile Application Testing Tools Comparison Functionality/Tools Squish GUI Testing M-eux Test Egg Plant Robotium Sikuli MonkeyTalk Company FrogLogic Jamo Solutions Test Plant Google Code Projects GitHub Project Gorilla Logic Testing Areas Covered Cross Browser Testing GUI Testing Web testing Mobile Testing GUI Testing Mobile Testing GUI Testing, Image Based Testing Web Testing Performance Analysis Mobile Testing GUI Testing and Mobile Testing GUI Testing and Image Based Testing Mobile Testing Supported Languages Python JavaScript Ruby Perl Tcl Squish specific script APIs for a lot of convenience Visual Studio, Eclipse M-eux specific Script. Visual Design Eclipse Python language level 2.7 (supported by Jython) Ruby language level 1.9 and 2.0 (supported by JRuby) Java Programming MonkeyTalk Supported OS iOS Cocoa Touch Android Web/HTML5/AJAX/Fl ex Android, BalcBerry, iOS and Windows Android, BalcBerry, iOS and Windows Android Android and iOS Android and iOS License Paid Paid Paid Free Free Free
  • 34. Mobile Application Testing by Javed Ansari 34 Analyze and Choose what is best for you! Cost Benefit Analysis •Purpose of the Application •Nature of Business •Current and forecast comparisons Scope Based Decisions •Device Variant Support •Native Application or Web Based Application •OS Variant Support Features Based Decisions •Work on Emulator/Device •Integration to Test Management Tools •Areas to be Automated Regression Testing Scope and Complexity of the System •Identifying the Core Functionality •Identifying the frequently used functionality •Indentifying the Business impacting functionalities Infrastructure Decisions • Could Based/ Standalone • Network Infrastructure • Mobile Features to be used Timelines of the Project •Purpose of the Application •Special Period Business App •Enterprise App
  • 35. Mobile Application Testing by Javed Ansari 35 The significant challenges and risks involved in mobile application development may reduce the quality of the mobile applications. These risks and challenges can be mitigated by adopting the various testing type and techniques outlined in this presentation. The importance of testing for mobile applications can not be over sighted before making them ready for production. An application with defects can hurt the business and the company reputation. Conclusion
  • 36. Mobile Application Testing by Javed Ansari 36