Hrushikesh Wakhle
2
Mobile Testing
3
Things To Take Home
1. Why Mobile Testing? 13. Mobile App at a Glance
2. What is Mobile Testing? 14. Gesture Tour
3. Why we need Mobile App Testing? 15. Mobile Platforms
4. Types of Applications 16. Device Modes
5. Mobile Testing Types 17. Mobile Application Checklist
6. Types of Mobile Devices 18. Real Device Vs Simulator/Emulator
7. Key Challenges 19. Emulator and Simulator
8. Methods Used for Mobile Testing 20. Mobile Testing in the Cloud, Benefits
9. Mobile App Testing 21. Test Case Strategies
10. Mobile Testing & Mobile App Testing 22. Mobile Automation
11. How to test a mobile application? 23. Future of Mobile Based Testing
12. Start Testing... Conclusion, Queries, Testing Tips
4
Why Mobile Testing?

In the last few years, testing of mobile application has become
very important and a point of concern for the app developers.

If the mobile testing is done in a proper manner, the number of
bugs can be significantly reduced and apart from that, proper
mobile application testing lets you identify the bugs right at beta
stage of the development lifecycle.

This saves your app the reputation on the market, and makes it
possible to succeed and reach your business goal.
5
What is Mobile Testing?

Testing mobile apps is complex – we all know that.

There are numerous platforms and OS’s (think
fragmentation), numerous devices, numerous types of
testing scenarios and a variety of network connections and
carriers.

Mobile application testing is a process by which
application software developed for handheld mobile
devices is tested for its functionality, usability and
consistency.

Mobile application testing can be automated or manual
type of testingg.
6
Why we need Mobile App Testing?

Lot of phones truly smarter

Faster Networks

More Apps, Features & Usages

Increasing Mobile Market
7
Types of Applications
8
Mobile Testing Types
9
Mobile Testing Types (Continued...)
10
Mobile Testing Types (Continued...)
11
Types of Mobile Devices
Candy bar phones
Touch Screen phones
Slider phones
Clamshell devices(flip phones)
Phones with QWERTY keyboard
Phones with AZERTY keyboard
12
Key Challenges
1. Variety of Mobile Devices- Mobile devices differ in screen sizes, input methods
(QWERTY, touch, normal) with different hardware capabilities.
2. Diversity in Mobile Platforms/OS- There are different Mobile Operating Systems in the market. The major ones are
Android, IOS, BREW, BREWMP, Symbian, Windows Phone, and BlackBerry (RIM). Each operating system has its own
limitations. Testing a single application across multiple devices running on the same platform and every platform poses a
unique challenge for testers.
3. Mobile network operators- There are over 400 mobile network operators in the world; out of which some are CDMA, some
GSM, whereas others use less common network standards like FOMA, and TD-SCDMA. Each network operator uses a
different kind network infrastructure and this limits the flow of information.
4. Scripting- The variety of devices makes executing the test script (Scripting) a key challenge. As devices differ in
keystrokes, input methods, menu structure and display properties single script does not function on every device
5. Lack of Physical Devices
6. A Testing Process:
* Test the site in a desktop browser first to ensure functionality behaves as expected.
* Once the site is functionality complete, test using some device emulators.
* When the site is working correctly across all emulators, begin testing on real handsets.
13
Key Challanges
4. Scripting- The variety of devices makes executing the test script (Scripting) a key
challenge. As devices differ in keystrokes, input methods, menu structure and display
properties single script does not function on every device
5. Lack of Physical Devices
6. A Testing Process:
* Test the site in a desktop browser first to ensure functionality behaves as
expected.
* When the site is working correctly across all emulators, begin testing on real
handsets.
15
What is Mobile Application Testing ?
Mobile Application Testing is testing which will be performed on a
mobile device instead of performing on a system.
16
Difference between Mobile Testing &
Mobile Testing or Mobile Device Testing:
-Mobile Testing is testing of Mobile Handsets or devices.
-Testing all the core like SMS ,Voice calls, connectivity(Bluetooth) ,
Battery(Charging),Signal receiving, Network are working correctly.
-Testing is conducted on both hardware and software.
Mobile Application Testing:
-Mobile Application Testing is the testing of mobile applications which we are making
as third party for the targeted mobile handset.
-Some core feature of the mobile are tested just to see that your application has not
created any side effects on your device functionality.
Mobile Application Testing
17
How to test a mobile application?
Installation:
Verify that application can be Installed Successfully.
Types of installation:
1)OTA(Over The Air)- Need GPRS sim card and internet connection.
2)Wifi
3)Datacable
4)Bluetooth
Uninstallation:
Verify that application can be uninstalled successfully.
18
How to test a Mobile Application?
Network Testing:
Verify the behavior of application when there is Network problem and user is
performing operations for data call.
User should get proper error message like “Network error. Please try after
some time”
Verify that user is able to establish data call when Network is back in action.
User should be able to establish data call when Network is back in action
19
Start Testing.....
First impression.
Is anything confusing ?
Does the app feel slow ?
Where are you testing it ?
Hardware device, network, OS
version.
Does the app crash or freeze ?
How’s the weather ?
20
Mobile App at a Glance....
1. Locate the icon on device home or app screen.
2. Tap the icon to start the app.
3. Examine the splash screen as the application loads.
4. Once the app loads, stop and look at it carefully.
- Cluttered ?
- Confusing ?
- Lost ?
- Quick and easy ?
- Location and Privacy data ?
21
Gesture Tour
Pinch
Spread
Tap
Press & Tap
Press and Drag
Rotate
Swipe
Flick
Shake
Double Tap
22
Gesture Tour (More)
23
Platforms
iOS
Android
Blackberry
Windows
Symbian
J2ME
24
Devices Modes in Different Platforms
25
Landscape and Portrait Mode
Interrupts
1. If the device is titled from portrait mode to landscape mode and vice versa, the
screen should self adjust as per the device resolution(condition: if the application
supports both portrait mode to landscape mode)
2. If the device is titled from portrait mode to landscape mode, the screen should
display an error message asking the user to switch the device back to landscape
mode or the screen resolution should not change(condition: if the application
supports only portrait mode)
3. If the device is titled from landscape mode to portrait mode, the screen should
display an error message asking the user to switch the device back to portrait
mode or the screen resolution should not change(condition: if the application
supports only landscape mode)
26
Mobile Application Checklist
http://himalaya:81/mwiki/QA/index.php/Mobile_Applicat
ion_Checklist
27
Real Device Vs Simulator/Emulator
Simulator / Emulator is a software program
that allows your mobile to imitate the
features of another computer or mobile
software you want them to imitate by
installing them to your computer or Mobile.
Simulator / Emulator SAME ???
28
Difference between Emulator and
Simulator Testing
The Simulator based Testing The Emulator based Testing
Simulator's objective is to simulate the
internal state of an object as close as
possible to the internal state of an object.
The emulator aims at emulating or
mimicking as close as possible the outer
behavior of an object
Simulators are preferable whenever the
testing team needs to test the mobile's
external behavior like calculating, making
transactions and so forth.
Emulators are preferable whenever the
testing team needs to test the mobile's
internal behavior like its internal hardware,
firmware and so forth.
Simulators are written in high level
languages.
Emulators are written in machine-level
assembly languages.
The simulators can be difficult in terms of
debugging purpose.
Emulators are more suitable when it comes
to debugging purpose
A simulator is just a partial re-
implementation of the original software.
Often an emulator comes as a complete re-
implementation of the original software .
29
30
31
Test Case Strategies
Installation
Application Start/Stop Behavior
Application Credentials
Interruptions – Voice calls
Interruptions – SMS
Autostart
No disruption to key device applications (pre
installed)
32
Mobile Automation
33
Automation Tools for Mobile
Applications
TestComplete
TestQuest Countdown
Test Quest Pro
Robotium
VNC
FoneMonkey (iPhone)
Eggplant (iPhone)
Test iPhone( For iPhone Mobile Web)
34
Lets Discuss ….Future of Mobile Based
Testing
35
Conclusion
A substantial challenge and risk involved in the testing of a mobile application
can impact a lot on the production of mobile apps. Such risks and challenges
involved in adopting myriad testing procedures have been outlined above.
The many tools available present in the market for testing of software mobile
applications will not only help in testing but also offer a platform which
enables measurement of security and compatibility compliance. This is what
helps in application certification where required.
The advantage of testing these apps before the deployment in a live
environment cannot be stressed out. An app with bugs and errors will not
only hurt the productivity but reputation as well.
36
Successful Projects Always Have Right Testing Approach.
+1 800.902.6361
info@clariontechnologies.co
.in
38
Testing Tips......
iPhone
UI Guidelines from Apple need to be adhered to.
Backward OS compatibility
Allows running only one application at a time.
Can debug via USB cable connection
Device Reboot not much needed until for
clearing cached data.
Screenshots: – Can be taken by clicking the
Home key and the Lock key together.No other
explicit tool needed
Memory Sweep – A tool with which a memory
snapshot of iPhone device can be obtained at
any given time.
39
Testing Tips ….. (contd)
Allows running multiple applications in
background.
Application gets normally minimized on
exiting.
- So a reboot needed to launch
application again.
- Reboot needed often
Debugging:
- Select “Enable USB Debugging” in
device settings.
- Then connect device to system via USB
cable.
40
Testing Tips ….. (contd)
Allows running multiple applications in background
Device Reboot:
- Not much needed until for clearing cached data.
- Needed mainly for while uninstalling/installing any
application.
Build Signing/Verification – Signed/certified by
RIM.
Debugging:
- USB cable connected debugging.
- Can be done via JDE console after attaching
debugger
41
Testing Tips ….. (contd)
Allows running multiple applications in
background – Device Reboot not much
needed until for clearing cached data
Build Signing/Verification – Signed/certified
by Symbian – By device manufacturing
authority like Nokia.
Debug - Can be connected to the IDE via: –
USB cable connected debugging.
More preferred – Via BlueTooth
Less Preferred - due to device driver issues
42
Testing Tips ….. (contd)
Allows running multiple applications in
background – Can exit the application from task
manager.
Needed in case application gets hanged in
background and its process needs to be killed
Debugging – USB Cable connection needed
between device and desktop – Can use visual
studio

Mobile testing

  • 1.
  • 2.
  • 3.
    3 Things To TakeHome 1. Why Mobile Testing? 13. Mobile App at a Glance 2. What is Mobile Testing? 14. Gesture Tour 3. Why we need Mobile App Testing? 15. Mobile Platforms 4. Types of Applications 16. Device Modes 5. Mobile Testing Types 17. Mobile Application Checklist 6. Types of Mobile Devices 18. Real Device Vs Simulator/Emulator 7. Key Challenges 19. Emulator and Simulator 8. Methods Used for Mobile Testing 20. Mobile Testing in the Cloud, Benefits 9. Mobile App Testing 21. Test Case Strategies 10. Mobile Testing & Mobile App Testing 22. Mobile Automation 11. How to test a mobile application? 23. Future of Mobile Based Testing 12. Start Testing... Conclusion, Queries, Testing Tips
  • 4.
    4 Why Mobile Testing?  Inthe last few years, testing of mobile application has become very important and a point of concern for the app developers.  If the mobile testing is done in a proper manner, the number of bugs can be significantly reduced and apart from that, proper mobile application testing lets you identify the bugs right at beta stage of the development lifecycle.  This saves your app the reputation on the market, and makes it possible to succeed and reach your business goal.
  • 5.
    5 What is MobileTesting?  Testing mobile apps is complex – we all know that.  There are numerous platforms and OS’s (think fragmentation), numerous devices, numerous types of testing scenarios and a variety of network connections and carriers.  Mobile application testing is a process by which application software developed for handheld mobile devices is tested for its functionality, usability and consistency.  Mobile application testing can be automated or manual type of testingg.
  • 6.
    6 Why we needMobile App Testing?  Lot of phones truly smarter  Faster Networks  More Apps, Features & Usages  Increasing Mobile Market
  • 7.
  • 8.
  • 9.
    9 Mobile Testing Types(Continued...)
  • 10.
  • 11.
    11 Types of MobileDevices Candy bar phones Touch Screen phones Slider phones Clamshell devices(flip phones) Phones with QWERTY keyboard Phones with AZERTY keyboard
  • 12.
    12 Key Challenges 1. Varietyof Mobile Devices- Mobile devices differ in screen sizes, input methods (QWERTY, touch, normal) with different hardware capabilities. 2. Diversity in Mobile Platforms/OS- There are different Mobile Operating Systems in the market. The major ones are Android, IOS, BREW, BREWMP, Symbian, Windows Phone, and BlackBerry (RIM). Each operating system has its own limitations. Testing a single application across multiple devices running on the same platform and every platform poses a unique challenge for testers. 3. Mobile network operators- There are over 400 mobile network operators in the world; out of which some are CDMA, some GSM, whereas others use less common network standards like FOMA, and TD-SCDMA. Each network operator uses a different kind network infrastructure and this limits the flow of information. 4. Scripting- The variety of devices makes executing the test script (Scripting) a key challenge. As devices differ in keystrokes, input methods, menu structure and display properties single script does not function on every device 5. Lack of Physical Devices 6. A Testing Process: * Test the site in a desktop browser first to ensure functionality behaves as expected. * Once the site is functionality complete, test using some device emulators. * When the site is working correctly across all emulators, begin testing on real handsets.
  • 13.
    13 Key Challanges 4. Scripting-The variety of devices makes executing the test script (Scripting) a key challenge. As devices differ in keystrokes, input methods, menu structure and display properties single script does not function on every device 5. Lack of Physical Devices 6. A Testing Process: * Test the site in a desktop browser first to ensure functionality behaves as expected. * When the site is working correctly across all emulators, begin testing on real handsets.
  • 15.
    15 What is MobileApplication Testing ? Mobile Application Testing is testing which will be performed on a mobile device instead of performing on a system.
  • 16.
    16 Difference between MobileTesting & Mobile Testing or Mobile Device Testing: -Mobile Testing is testing of Mobile Handsets or devices. -Testing all the core like SMS ,Voice calls, connectivity(Bluetooth) , Battery(Charging),Signal receiving, Network are working correctly. -Testing is conducted on both hardware and software. Mobile Application Testing: -Mobile Application Testing is the testing of mobile applications which we are making as third party for the targeted mobile handset. -Some core feature of the mobile are tested just to see that your application has not created any side effects on your device functionality. Mobile Application Testing
  • 17.
    17 How to testa mobile application? Installation: Verify that application can be Installed Successfully. Types of installation: 1)OTA(Over The Air)- Need GPRS sim card and internet connection. 2)Wifi 3)Datacable 4)Bluetooth Uninstallation: Verify that application can be uninstalled successfully.
  • 18.
    18 How to testa Mobile Application? Network Testing: Verify the behavior of application when there is Network problem and user is performing operations for data call. User should get proper error message like “Network error. Please try after some time” Verify that user is able to establish data call when Network is back in action. User should be able to establish data call when Network is back in action
  • 19.
    19 Start Testing..... First impression. Isanything confusing ? Does the app feel slow ? Where are you testing it ? Hardware device, network, OS version. Does the app crash or freeze ? How’s the weather ?
  • 20.
    20 Mobile App ata Glance.... 1. Locate the icon on device home or app screen. 2. Tap the icon to start the app. 3. Examine the splash screen as the application loads. 4. Once the app loads, stop and look at it carefully. - Cluttered ? - Confusing ? - Lost ? - Quick and easy ? - Location and Privacy data ?
  • 21.
    21 Gesture Tour Pinch Spread Tap Press &Tap Press and Drag Rotate Swipe Flick Shake Double Tap
  • 22.
  • 23.
  • 24.
    24 Devices Modes inDifferent Platforms
  • 25.
    25 Landscape and PortraitMode Interrupts 1. If the device is titled from portrait mode to landscape mode and vice versa, the screen should self adjust as per the device resolution(condition: if the application supports both portrait mode to landscape mode) 2. If the device is titled from portrait mode to landscape mode, the screen should display an error message asking the user to switch the device back to landscape mode or the screen resolution should not change(condition: if the application supports only portrait mode) 3. If the device is titled from landscape mode to portrait mode, the screen should display an error message asking the user to switch the device back to portrait mode or the screen resolution should not change(condition: if the application supports only landscape mode)
  • 26.
  • 27.
    27 Real Device VsSimulator/Emulator Simulator / Emulator is a software program that allows your mobile to imitate the features of another computer or mobile software you want them to imitate by installing them to your computer or Mobile. Simulator / Emulator SAME ???
  • 28.
    28 Difference between Emulatorand Simulator Testing The Simulator based Testing The Emulator based Testing Simulator's objective is to simulate the internal state of an object as close as possible to the internal state of an object. The emulator aims at emulating or mimicking as close as possible the outer behavior of an object Simulators are preferable whenever the testing team needs to test the mobile's external behavior like calculating, making transactions and so forth. Emulators are preferable whenever the testing team needs to test the mobile's internal behavior like its internal hardware, firmware and so forth. Simulators are written in high level languages. Emulators are written in machine-level assembly languages. The simulators can be difficult in terms of debugging purpose. Emulators are more suitable when it comes to debugging purpose A simulator is just a partial re- implementation of the original software. Often an emulator comes as a complete re- implementation of the original software .
  • 29.
  • 30.
  • 31.
    31 Test Case Strategies Installation ApplicationStart/Stop Behavior Application Credentials Interruptions – Voice calls Interruptions – SMS Autostart No disruption to key device applications (pre installed)
  • 32.
  • 33.
    33 Automation Tools forMobile Applications TestComplete TestQuest Countdown Test Quest Pro Robotium VNC FoneMonkey (iPhone) Eggplant (iPhone) Test iPhone( For iPhone Mobile Web)
  • 34.
    34 Lets Discuss ….Futureof Mobile Based Testing
  • 35.
    35 Conclusion A substantial challengeand risk involved in the testing of a mobile application can impact a lot on the production of mobile apps. Such risks and challenges involved in adopting myriad testing procedures have been outlined above. The many tools available present in the market for testing of software mobile applications will not only help in testing but also offer a platform which enables measurement of security and compatibility compliance. This is what helps in application certification where required. The advantage of testing these apps before the deployment in a live environment cannot be stressed out. An app with bugs and errors will not only hurt the productivity but reputation as well.
  • 36.
  • 37.
    Successful Projects AlwaysHave Right Testing Approach. +1 800.902.6361 info@clariontechnologies.co .in
  • 38.
    38 Testing Tips...... iPhone UI Guidelinesfrom Apple need to be adhered to. Backward OS compatibility Allows running only one application at a time. Can debug via USB cable connection Device Reboot not much needed until for clearing cached data. Screenshots: – Can be taken by clicking the Home key and the Lock key together.No other explicit tool needed Memory Sweep – A tool with which a memory snapshot of iPhone device can be obtained at any given time.
  • 39.
    39 Testing Tips …..(contd) Allows running multiple applications in background. Application gets normally minimized on exiting. - So a reboot needed to launch application again. - Reboot needed often Debugging: - Select “Enable USB Debugging” in device settings. - Then connect device to system via USB cable.
  • 40.
    40 Testing Tips …..(contd) Allows running multiple applications in background Device Reboot: - Not much needed until for clearing cached data. - Needed mainly for while uninstalling/installing any application. Build Signing/Verification – Signed/certified by RIM. Debugging: - USB cable connected debugging. - Can be done via JDE console after attaching debugger
  • 41.
    41 Testing Tips …..(contd) Allows running multiple applications in background – Device Reboot not much needed until for clearing cached data Build Signing/Verification – Signed/certified by Symbian – By device manufacturing authority like Nokia. Debug - Can be connected to the IDE via: – USB cable connected debugging. More preferred – Via BlueTooth Less Preferred - due to device driver issues
  • 42.
    42 Testing Tips …..(contd) Allows running multiple applications in background – Can exit the application from task manager. Needed in case application gets hanged in background and its process needs to be killed Debugging – USB Cable connection needed between device and desktop – Can use visual studio