Friday, June 29, 2012

About iPhone Platform Generations



What is iPhone?
  • iPhone is a smartphone made by Apple that combines main functions of several popular electronic gadgets like an iPod, a tablet PC, a digital camera and a cellular phone in a single device with a shared interface and integration between them. The device includes Internet browsing and networking capabilities.
  • Latest is iPhone 4S.
 What is iPod Touch ?
  • iPod Touch is a portable media player, personal digital assistant, handheld game console, and Wi-Fi mobile device designed and marketed by Apple.
  • It only lacks Cellular capacity.
  • Latest is iPod Touch 4th Generation.
What is iPad? 
  • iPad  is a portable device  for audio-visual media including books, periodicals, movies, music, games, and web content designed and marketed by Apple. 
  • It support to Cellular capacity for GPRS and 3G services (Hardware Dependent).
  • Latest is The iPad(This is 3rd generation iPad) .
What is iTunes?  
  • iTunes is a media player computer program, used for playing, downloading, and organizing digital music and video files on desktop computers.
  • It manage contents on iPod, iPhone, iPod Touch and iPad, you need iTunes to transfer any data like application, music etc which you want to your devices from computer.
  • Latest iTunes version is 10.6.3

What is iOS?  
  • iOS is Apple's mobile operating system used to run the popular iPhone, iPad and iPod Touch devices. Formerly known as the iPhone OS.
  • iOS is the base software that allows all other apps to run on an iPhone, iPod Touch or iPad.
  • iOS is derived from Mac OS X and is a Unix-like operating system by nature.

Version With device Hardware


iPhone devices:


Model
iPhone 5S
iPhone OS 1.0
iPhone OS 2.0
iPhone OS 3.0
iOS 4.0 (GSM)
iOS 4.2.5
 (CDMA)
iOS 5.0
iOS 6.0
iOS 7.0
Highest supported operating system
iPhone OS 3.1.3
iOS 4.2.1
iOS 6.1.3
iOS 7.0


iPod Touch Devices:

Model
1st generation
2nd generation
3rd generation
4th generation
5th generation
Initial operating system
iPhone OS 1.1
iPhone OS 2.1.1
iPhone OS 3.1.1 (8 GB "MC" model)
iPhone OS 3.1.2
iOS 4.1
iOS 6.0
Highest supported operating system
iPhone OS 3.1.3
iOS 4.2.1
iOS 5.1.1[47]
iOS 6.1.3

iPad devices:

Model
Initial operating system
iOS 3.2
iOS 4.3
iOS 5.1
iOS 6.0
Highest supported operating system
iOS 5.1.1
iOS 7.0
iOS 7.0
iOS 7.0
iPad mini: came with iOS 6.0 and supports iOS 7.0

Few Nice Free Mobile Apps

Communication: For free Voice and video Calls
  • Skype: Available on Android , iPhone, Windows 
  • Viber: Available on Android , iPhone, Windows and Blackberry
  • Gtalk: Available by default on Android

Social Networking:
  •  FaceBook
  •  Twitter
  •  Linkedin
 Remote Access of Computer:
  •  TeamViewer: TeamViewer connects to any PC or server. You can remote control PC as if you were sitting right in front of it. Available on Android & iPhone.

Thursday, June 28, 2012

What is Mobile Business Application?


Mobile Business Applications are the applications which are developed for different mobile devices by the companies to run their business products on them. They can be broadly classified into Standalone applications and Enterprise Applications (Client-Server based applications).

The Standalone applications as name suggest reside in the device and do not interface with external systems While Enterprise applications are the applications which interact with outside systems using wireless connectivity like EDGE, 3G, and WIFI etc.

Tuesday, June 26, 2012

Testing Strategy for Mobile Applications

Now a day’s the market of smart phones in increasing in all over world and so is the completion of different  Mobile Applications and so is the development and testing jobs of persons on mobile platforms.
Since I am a QA guy who have experience on  testing applications on different mobile platforms starting from Palm , Pocket PC (PPC), Blackberry, iPhone/iPod Touch/iPad and  Android devices, so I would like to point out the Testing Strategy for Mobile Applications:

Following Test Strategy can be followed while testing Mobile Application:
  1. First and foremost point is application installation on device , the application installation testing that application should be easily and completely installed on device.
  2. Then comes the smoke or sanity testing, do basic verification of application whether it is testable or not, if no then file a bug or suspend the testing effort.
  3. Then do the functionality testing of Application, whether it is meeting the functional requirement or not.
  4. Then verify the GUI of application.
  5. After this much is done you have to take care of the
    • Performance of application, i.e. how much time application screens are taking in responding to user action for static applications.
    • Network testing i.e., using application on EDGE, WIFI, 3G or 4G networks, Airplane modes and observe the behavior of application as some applications crashes on low networks.
    • Testing call feature from application (if application has that feature) with and without SIM card installed in it.
    • As now a day’s most of the devices are coming with touch screens so you have to take care to multi touch using more than one finger, tap & hold on screen and just a small touch etc.
    • Open all the native application if device is multi tasking then observe the response/behavior of application under test.
    • Do orientation multiple times if application support orientations. 
    • Then check the uninstallation Testing of application i.e., all the components of application should get removed from device when user uninstall it   



After these things are done you have to take care of various other scenarios like 
      
  • Interruption in the process of installation and at various other place of request/receiving from server etc by receiving call/SMS etc ,low battery indicator, Alarm/Calendar event indicators .
  •  Application specific testing scenarios depend on which type of application you are testing.
  • Check the compatibility of application on different hardware’s which includes different screen size/resolution on real devices like iPhone platform check on iPhone/iPod touch and on iPad which are running on different or same iOS or on different manufacturer devices of same /other device OS like Android or Windows phones or on different emulators as emulators always do not provide complete support to all kind of application.
  • Do some destructive testing like passing large input at different places or by doing something which is not expected.
  • Security Testing which also depends upon application to application, basic application like password encryption etc
  • Retesting and regression testing are continuous part of any kind of testing
Please let do comment if i am missing some thing or some point need elaboration.

Useful information for reporting issue


  • Accurately report available memory
  • Provide 'crash report' logs with your defect reports
  • Spy on the app from the console
  • Test under low memory conditions
  • Screenshots, screenshots, screenshots
  • Provide useful defect characterization information
  • Create connectivity problems
  • Boundary test data input
  • Employ background applications.
  • Clean your device before trying to upgrade the Application Under Test

Monday, June 25, 2012

Basics Overview of Blackberry


  • The BlackBerry is a wireless handheld device platform introduced in 1999
  •  Developed by the Canadian company Research In Motion (RIM)
  •  Supports push e-mail, mobile telephone, text messaging, internet faxing, web browsing and other wireless information services
  •  BlackBerry commands a 15.4% share of smartphone sales, making it the third most popular device manufacturer after and Apple and Google .
  • Works on proprietary multi-tasking operating system “Blackberry OS”.
  • The OS provides support for MIDP and WAP, Hence support J2ME based Applications and WAP Applications.
  • Early BlackBerry devices used Intel-80386-based processors. 
  • Modern GSM-based BlackBerry handhelds incorporate an ARM 7, 9 or ARM 11 processor.
     

iPhone Config Utility Tool


Crash Report Location on iPhone Platform


When ever an iPhone application crashes it creates a crash report.

Crash report can be found at following location on the system:

  •   Windows XP:      C:\Documents and Settings\\Application Data\Apple Computer\Logs\CrashReporter/

  •  Windows 7/ Vista:  C:\Users\\AppData\Roaming\Applecomputer\Logs\CrashReporter/MobileDevice/

  • Mac Machine:     ~/Library/Logs/CrashReporter/MobileDevice/

Please note to view this folder (AppData or Application Data) on windows platform you have to select show hidden files and folders option under view.

For Windows XP:

1. Open any Folder present on computer
2. Click on Tools
3. Click on Folder options...
4. Click on View
5. Select the check box on Show hidden files and folder
6. Click on OK button

For Windows 7:

1. Click on Start button
2. Click on Control Panel
3. Click on Folder options
4. Click on View
5. Select the check box on Show hidden files and folder
6. Click on OK button

Clean your iPhone Device


  • Tap on Settings
  • Tap on General.
  • Scroll the screen and tap on Reset
  • Tap on Erase All Content and Settings
  • It will show a modal message warning with two button
  • Tap on Erase iPod
  • It will again show a message for confirmation of action with two button
  • Tap on Erase iPod and it will start cleaning device
  • It will start cleaning device and a progress bar will appear on screen
  • Then follow on screen instructions

iOS Simulator


 iOS Simulator 

The iOS Simulator application  :-
  • (locatedin /Platforms/iPhoneSimulator.platform/Developer/Applications)
  •  Xcode installs applications in simulation environments automatically when you build your application for a simulator.
     How to launch Simulator:-      
  •    Go to Finder and type iOS simulator
  •     Click on iOS simulator
       Requirement for iOS simulator:-
  •   Mac OS X
  •   Latest Mac OS
  •   Xcode
  •   Latest Xcode OS 
Location where to place the simulator build:-


 
How to launch iOS simulator:-





Hardware options available for simulator:-

To specify the device you want to simulate, choose Hardware > Device, and choose the device.

To specify the iOS version to simulate, choose Hardware > Version, and choose the iOS version.

Manipulating the Hardware:-
  •   Rotate Left. Rotates the simulator to the left.
  •   Rotate Right. Rotates the simulator to the right.
  •   Shake Gesture. Shakes the simulator.
  •   Home. Takes the simulator to the Home screen.
  •   Lock. Locks the simulator.
  •   Toggle In-Call Status Bar. Toggles the status bar between its normal state and its state when a phone call or FaceTime call is in progress.
  •  Simulate Hardware Keyboard. Toggles the software keyboard on an iPad simulator. Turn off the software keyboard to simulate using a keyboard dock or wireless keyboard with an iPad device. 
  • TV Out. Opens a window simulating the TV out signal of a device.

Gesture - Desktop action:-
             Tap                                                Click
  •   Touch and hold             Hold down the mouse button.
  •   Double tap                                Double-click.
  •   Swipe     
1. Place the pointer at the place where you want the swipe to start.
2. Hold down the mouse button.
3. Move the pointer in the direction you want to swipe and release the mouse button.

Uninstalling Applications:-
  • Place the pointer over the icon of the application you want to uninstall and hold down the mouse button until the icon starts to wiggle and a close button appears.
  • Click the close button.
  • Click the Home button to stop the icon from wiggling
 Resetting Content and Settings:-
  •  To set the user content and settings of a simulation environment to their factory state and remove the applications you have installed, choose iOS Simulator > Reset Content and Settings
Viewing iOS Simulator Console and Crash Logs:-  
  •   If your application crashes while running in a simulator, the CrashReporter facility displays details about the crash. 
       /Applications/Utilities

 
Hardware Simulation Support:-

 iOS Simulator doesn’t simulate accelerometer and camera hardware
 

Device Provisioning used on iPhone Platform


  • To install a QA build you need to have your device being provisioned.
  • A provisioning file associates one  or more developers and one or more devices with an Application ID (iOS Application ID)
  • A provisioning file need to be installed on your Testing device before installing the QA build
  • To provision a device you need to provide the UUID of your Device to Dev Team and they can provide the provisioning file that has the UUID of your device.
  • Production applications can be directly installed on device through App Store or iTunes.  

UDID or UUID of iPhone devices


UDID or UUID of iPhone devices

  • When manufactured every iPhone is assigned an identifier that is unique to that physical device.
  • This is known as the UDID ("Unique Device Identifier "), but is also commonly referred to as the "UUID", an acronym for Universally Unique Identifier
  • UDID is a 40 digit Hexadecimal number
  • UDID is a must for provisioning of the device


How to Find UDID:- 
  • Connect the Device to iTunes 
  • Click on Device name present on left side of Panel 
  • Click on Summary (It shows device summary) 
  • Click on Serial number  
  • It shows you the 40 digit hexadecimal number
Use of UDID: It is basically used for Device Provisioning.

For QA you have to just copy and paste it using Edit button of iTunes and provide this number to developer so that they can add it to provisioning file which came along with testing builds.

Application Un-installation from iPhone Device


Uninstalling iPhone Applications

Most Common Method:-
  • Many times we need to remove an application from device.
  • Tap and Hold on the Application icon available on Device Home screen till the application icon starts wiggle and close button appears on application icon.
  • Tap on close button available on Application icon
  • With that, the application is uninstalled.
Another Method (Used from iOS 5.0 onward):-

  • Tap on Settings on device.
  • Tap on General
  • Tap on Usage
  • It will show the list of Applications which you have installed on device along with Memory used in MB by each application
  • Tap on the application which you want to remove
  • A red button with label "Delete App" appear on screen
  • Tap on Delete App button
  • It shows a popover with two buttons, Delete App and Cancel
  • Tap on Delete App (It will delete the App from device)

Application Installation On iPhone Devices Using iTunes



  • Installing Applications With iTunes
  • Drag and Drop build to iTunes Library
  • Access Device section on Left panel in iTunes
  • Access Device, by default it shows Summary tab
  • Tap on ‘Apps’ tab
  • Check in Application to be installed on device
  • Tap on [Sync] button in iTunes
  • Once the sync is over, application icon will be available on device

Sunday, June 24, 2012

Installing Applications through App Store on iPhone Platform devices



  • Open the App Store application on iPhone/iPod Touch or iPad device.
  • Search for the desired application you want to Install
  • Tap on Desired application listed
  • Tap on [Free] button 
  • Enter iTunes password
  • Once the application has been downloaded it will be available on device Home screen

Below are the example screen shots of the process of installation :-



Saturday, June 23, 2012

Steps for installing build on Android emulator


Steps:

1. Download SDK of android and put in C drive
2. Open command prompt  and go to tools location in cmd of android “like this C:\android-sdk-windows_2.2\tools>”
3. Write ddms there
4. Now go to c drive and open sdk and  double click on SDK setup.exe
5. Click on Virtual device
6. Click on New
7. Write any name there and give size like 512 and then select target as any OS emulator you want to create and click on create AVD (It do not support space in Name )
8. The name which you have created will appear in the list
9. Click on that name and then on start button, it will open the device which you have created
10. Now put  epocrates.apk under tool folder   
11. Now open another cmd  and use this command C:\android-sdk-windows_2.2\tools>adb install application.apk , this will install installer on that device which you have created
12. Just click on epocrates icon and enter username and password, this will install build on emulator