Mobile Application Basic

1. What is the difference between Mobile Testing and Mobile Application Testing?

Mobile Testing: Testing the mobile handsets/device. In which we test the core functionalities of device like SMS, Calls, Connectivity via Bluetooth and Wi-Fi, Video Calling, network, battery and OS etc.

Mobile Apps Testing: It is the testing of application on mobile devices.

2. How Many Types of mobile applications?

Mobile applications can be broadly categorized into three categories –

1. Native app
2. Web app
3. Hybrid App.

Native App: Native app are developed specifically for one platform, which is coded with a specific programming language (like Objective C for iOS, Java for Android) and installed directly onto the device and can take full advantage of all the device features.

They can use the camera, the GPS, the accelerator, the compass, the phone book etc. Native apps can use the device’s notification system and can work offline. Native apps are installed through an application store (such as Google Play or Apple’s App Store).Native mobile apps provide fast performance and a high degree of reliability.
For Example: Temple Run, Candy Crush etc.

Web App: Web applications are mobile web portals that are designed, customized and hosted specifically for mobiles. They are accessed through the mobile device’s web browser using a URL.Web apps became really popular when HTML 5 came around and people realized that they can obtain native-like functionality in the browser. Mobile web applications cannot use device functionality.
For Example : google.com, m.snapdeal.com, m.yahoo.com etc.

Hybrid App: Hybrid Apps are Web apps embedded in a native app, run on the device, and are written with web technologies (HTML5, CSS and JavaScript).

Hybrid apps run inside a native container, and leverage the device’s browser engine (but not the browser) to render the HTML and process the JavaScript locally. A web-to-native abstraction layer enables access to device capabilities that are not accessible in Mobile Web applications, such as the accelerometer, camera and local storage. A hybrid app is NOT tied to any platform or any particular mobile device. So, it can run on any device once built. Write Once Run Anywhere (WORA) type of app. For Example : Flipkart, Facebook, Twitter etc.

3. What is the important scenarios in Mobile app testing?

Mobile App Testing Important Test Scenarios:
– Check if the app works well with multiple carriers and multiple devices
– Usability of the features in a mobile screen
– Testing it in different mobile platforms – like Android and iOS
– Installations, uninstalling, launching the app with network and without network, testing functionality
– Network connections –Wi-Fi, 2G, etc.
– Logs at  iOS iPhone configuration utility  for Android Monitor.bat can be used for debugging

4. What is the Key Challenges in Mobile Application Testing?

  1. Variety of Mobile Devices-Mobile devices differ in screen sizes, input methods (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, Windows Phone, and BlackBerry.
  3. Mobile network operators –There are over 400 mobile network operators in the world. Out of which some are CDMA, some GSM, others common network .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. What is Scenario testing?

  • Scenario testing is done to make sure that the end to end functioning of software is working fine, or all the business process flows of the software are working fine.
  • Scenario testing helps testers to explore how the software will work in the hands of an end user.
  • Scenario testing tests the business flow of the software; it helps in finding lot of defects which cannot be found with other types of testing.
  • For Ex: Hospital Management System to explain the importance of scenario testing. So if scenario testing would have been done for this test scenario (Patients history should get transferred when his status is changed from outpatient to Inpatient) this bug would have been found well in advance.

6. What is Thread Testing?

  • A thread is the smallest unit of work that a system can execute.
  • Thread testing, a software testing technique used during early integration testing phase to verify the key functional capabilities that carry out specific task

7. WHAT IS “BUG LEAKAGE?” AND WHAT IS “BUG RELEASE?”

  • A defect which exists during testing yet unfound by the tester which is eventually found by the tester/end-user is also called bug leakage.
  • bug release is when a particular version of s/w is released with a set of known bug(s)/defect(s). These bugs are usually low severity and/or low priority bugs.

8.What is Memory Leakage Testing?

Memory Leakage Testing– Memory leakage happens when a computer program or application is unable to manage the memory it is allocated resulting in poor performance of the application and the overall slowdown of the system. As mobile devices have significant constraints of available memory, memory leakage testing is crucial for the proper functioning of an application.

9.What are the tools used in debugging?

We generally use logs to see the cause of issue where the failure is occurring, so for iOS iPhone configuration utility for Android Monitor.bat etc. can be used and if you provided logs from these tools developer can easily understand the cause of issue.

10.How to check CPU usage and memory utilization of an app?

You can use various tools like Usemon, CPU Usage Monitor, and CPU Usage& Process List Viewer etc. available in Google Play store and if you want to use sdk, then you can use systrace feature of Android Monitor.

1111

 

********************************************************************************

11. What is the difference between emulator and simulator?

 Emulator: Emulates the devices based on hardware.
Simulator: Emulates the devices based on software.

12. How do you test different screen size/devices?
Emulator

13. What is the latest version of Android?

Android – 5.0 Lollipop

14. What is the latest version of iOS?

iOS 8.4 Beta 3

15. Full Form of various application extensions:

 

  • iPA: iOS APP Store Package
  • APK: Android Application Package file
  • exe: Executable File
  • jad: Java Application Descriptor
  • prc: Palm Resource Compiler

mobile-application-development

16. Which one is good for test execution? Emulator or physical device?

Physical device

17. What is the command to install application in emulator?

Adb install” path of apk”

18. Explain the Android architecture?

Linux kernel, Libraries, Android Run Time, Application Framework, Applications

19.How you created the log files?

Log cat

20. What is ADB command?

Android Debug Bridge

222

********************************************************************************

21. What are the names of various Android OS (Generally asked about latest and just previous) ?

 Android 1. 0  (Name not applicable):

  • Was released on 23 September 2008. The first Android device, the HTC Dream (G1),
  • Download and upgrade support from Market.
  • WiFi and Bluetooth support.
  • Google Sync support.
  • Maps with street view  support
  • Voice dialer without typing Name.
  • Static Wallpaper Support

Android 1. 1  (Name not applicable):

  • Was released on 9 February 2009.
  • Support Map view with business details
  • Support Saving the attachment from MMS.

Android 1. 5  (Cupcake):

  • Was released on 30 April 2009 based on Linux Kernel 2.6.27.
  • Support third party virtual keyboard with text prediction.
  • Support widget
  • Supports video Recording
  • Copy Paste feature
  • Shows user picture & thumbs for Favorites
  • Animated screen transitions.

Android 1. 6  (Donut):

  • Was released on 15 September 2009 based on Linux Kernel 2.6.29.
  • Voice and text entry search
  • Multi-lingual synthesis engine
  • Updated technology support for CDMA/EVDO, 1x,VPNs and a text-to-speech engine

Android 2.0/2.1 (Eclair):

  • Was released on 26 October 2009 based on Linux Kernel 2.6.29.
  • Can add multiple account and performed sync.
  • Exchange Email supports
  • Ability to search saved SMS or MMS
  • Improve Google Maps
  • Addition of Live wallpaper
  • 1 SDK was released on 12 January 2010

Android 2.2 (Froyo):

  • Was released on 20 May 2010based on Linux Kernel 2.6.32.
  • Speed, memory and performance optimization
  • Support for the Android Cloud to Device Messaging (C2DM) service, enabling push notifications
  • USB tethering and Wi-Fi hotspot functionality
  • Support for installing applications to the expandable memory

Android 2.3 (Gingerbread):

  • Was released on 6 December 2010 based on Linux Kernel 2.6.35.
  • Updated user interface design with increased simplicity and speed
  • Native support for SIP VoIP internet telephony
  • Support for Near Field Communication (NFC)
  • Supports for multiple Camera , Front Camera Support,
  • OS 2.3.4 supports voice & Video chat using Gtalk.
  • OS 2.3.7 introduced Google Wallet support for the Nexus S 4G

Android 3.0 (Honeycomb):

  • Was released on 22 February 2011 based on Linux Kernel 2.6.36.
  • First android OS Tablet support for Motorola Xoom .
  • Multi-tasking Supports
  • Multiple browser tap
  • Supports Video Chat by Gtalk.
  • Supports for Multi-Core processors.
  • New two-pane Email UI
  • Resizable home screen widget
  • Supports Joysticks and gamepads.
  • Improved Adobe Flash supports in browser.
  • Added System Bar, featuring quick access to notifications, status, and soft navigation buttons, available at the bottom of the screen.
  • Ability to view albums and other collections in full-screen mode in Gallery, with easy access to thumbnails for other photos

Android 4.0 (Ice Cream Sandwich):

  • Was released 19 October 2011
  • Speed, memory and performance optimization
  • Support for the Android Cloud to Device Messaging (C2DM) service, enabling push notifications
  • Separation of widgets in a new tab, listed in a similar manner to apps
  • Ability to access apps directly from lock screen
  • Unlock, a feature that allows users to unlock handsets using facial recognition software.
  • Supports Google+ , hangout feature.

Android 4.1 (Jelly Bean):

  • Was released 27 June 2012
  • Google Voice Search and Google Now
  • Smart App Updates
  • High Resolution Contact Photos
  • Expandable Notifications
  • Resizeable App Widgets

Android 4.2 (Jelly Bean):

  • Was released 13 November 2012
  • Ability to swipe to open camera from locked screen
  • New redesigned camera app
  • New redesigned clock app
  • New Gesture Keyboard
  • Always-on VPN

Android 4.3 (Jelly Bean):

  • Was released 24 July 2013
  • Autocomplete in dial pad
  • Support to high performance graphics
  • Location detection through Wi-Fi
  • Restricted profiles – put your tablet into a mode with limited access to apps and content
  • Bluetooth Smart support

Android 4.4 (Kit Kat):

  • Was released 31 October 2013
  • Dialer Search which help in searching nearby thing by phone number
  • Hangouts SMS Integration
  • Wireless printing capability
  • Music and movie-seeking from lock screen
  • Location in Quick Settings
  • Downloads app redesign

Android – 5.0 Lollipop

Businessman pressing colorful mobile app icons with bokeh background

22. What are some tools used to capture app logs on Android:

We can use monitor.bat file located under tools folder of android sdk to see log and we can select and save the log from it. Other than this alogcat is a free log getting tool which is present in Google Play

23. Screenshot capabilities for Android, and Android phones:

Same with Android Debug Monitor (Monitor.bat) if device is connected use screen capture feature and also for Samsung device like note2: Power and Home buttons at the same time & wait for capture sound

24. What is latest OS version:

8.3 beta for iOS
Blackberry has OS 10.2.1,
Android has 5.0 (Lollipop)
{At the time of writing blog}

25.TEST CASES FOR TESTING A MOBILE APP

In addition to functionality based test cases, Mobile application testing requires special test cases which should cover following scenarios.

  • Battery usage– It’s important to keep a track of battery consumption while running application on the mobile devices.
  • Speed of the application- the response time on different devices, with different memory parameters, with different network types etc.
  • Data requirements – For installation as well as to verify if the user with limited data plan will able to download it.
  • Memory requirement– again, to download, install and run
  • Functionality of the application– make sure application is not crashing due to network failure or anything else.

mobile-application

26. Mobile App Scoping & Planning Kick start Outcome:

Some of the artifacts you will receive at the culmination of the kick start include:

  • Business Context Document
  • App Roadmap
  • Technical Architecture
  • App Prototype
  • App Plan – Cost, Resources, Tasks

A solid app roadmap is a key component of driving success of a mobile app.
 Ready to move forward? Use the form at the left to reach out to us and we’ll set up a time to discuss.

27. When performing end to end Mobile Testing what major criteria are taken into consideration

Major areas are Installation, first time launching application without having network, uninstall of app, orientation of app if it support it, testing application performance on different kind of devices and network scenarios, testing the application response how it is responding when invalid user credentials are provided and try to change them after installation and so on.

Also if your application is accessing network then you must see the logs generated during that period so that sensitive.

28. one thing which you cannot do with Emulator but can do with real device?

You can test the interrupts like phone call, messages, battery drain out completely while you were using the application under test, low battery scenarios etc  on real devices , memory card mount/unmount scenarios , actual performance of you application can be test on real devices              only, Bluetooth related testing can be only done on real devices.

29. Data Generation Tools

This is generally done by the Use cases, SRS and FRS document as you application specific test data can be only created using these things.

30. Tell about filter what you can create while checking logs?

Filters helps you in finding relevant information about your application and you can create filter based on the application package name like com.abc.com and save this filter by name as my application, when you click on this filter then you will see only logs which are from your application.

You can create filter based on Log tag which is related to the thing that line is doing example if you have placed system.out to print the output put then you can create a filter by tag System.out, then it will short list all the print output.And you can create filter by Choreographer which helps in finding the skipped frames if you want to see it.

You can create filter corresponding to your PID and log message which is coming as text also.

aaaa

 

******************************************************************************

31. What is the web services?

It is a software component to perform a task, interface between one program and another program.

32. What is the importance of manifest.xml file in android development?

It is a configuration file.

33. What is the MMS?

Multimedia Messaging Service

34. Defect Tracking Mechanism

This is of same nature like any other software testing project using any tool like Jira, Bugzilla etc

35. Can QTP support automation Testing?

Yes with perfect/See Test Add-in

36. Few automation testing tool

See Test
Device Anywhere
Perfecto Mobile
Monkey Talk

qqq

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s