1. Question 1: What is mobile application testing and how is it different from Mobile Testing?
Answer: Mobile Application Testing (MAT) is the testing of application on mobile devices
and it is different from Mobile Testing (MT) in the term that in MT we focus on the native
application features of the Mobile devices like Call, SMS, Media Player etc while in MAT we
focus only on the functionality & features of the application under Test. i.e, MT is generally
done in handset makers like Samsung, HTC, Nokia, Sony, Apple etc while MAT is done in
various product based companies and through there vendors like service based companies
which do testing of various mobile applications products on different devices like Gmail on
mobile, Skype on mobile etc.
Question 2: What kind of application you have tested and on which platform of mobile ?
Answer: The kind of application depends upon project on which you have worked on like
from multimedia application, banking applications, healthcare applications, social
networking application so this part is specific to your particular application and any one can
explain about his/her work easily.
Regarding Second part of question:
Platform is also spec ific to your projec t/produc t on whic h you worked but now a day’s
generally all applications are generally developed for iOS (Apple), Android, Blackberry &
Windows platforms mainly and on Symbian & Bada platforms also.
While explaining these platforms the interviewers generally want to know about your
knowledge of devices or OS that what are specific features on these devices/OS and how
does these impact any kind of application.
For example-
What is the extension of application developed on different platforms OS : Answer is
*.ipa for iOS,*.apk for Android, Blackberry *.jad, for windows phone *.exe and for palm
*.prc file.
How can a testable build installed on device: For iOS platform iTunes is required, for
Android you need android SDK &; adb install command is used to install build on device.
What is latest OS version: 8.0 beta for iOS , Blackberry has OS 10.2.1, Android has
4.4.3 (Kit Kat){at the time of writing blog}
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
2. · 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
Few more question n answers
1. 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
3. 2. 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
3. How do you perform end to end testing in respect to mobiles:
It totally depend upon the project to project,can you please elaborate on the
question because this is project specific as starting from installation and version
upgrade ,uninstallation etc we do apart from functional testing. Security and
Performance of application also need to be tested.
4. Some issues you faced during testing in regards to the platforms you used:
Some time some issue appear on particular version device and OS of device also do
matter.
5. Issues faced with cross platform testing:
Generally the issue depends upon the different OS/device version, it might be same
thing is working on one OS while it might not work on another version.Example we
faced issue that our application was working fine on iOS 6.x version devices but on
tapping few modules on iOS 5.x devices application crashes and same happened
with 2.3.5 Vs
6. What kind of testing did you perform (functional, interruption, connectivity, etc) :
Very first test we have to perform installation , after that we check the basic
functionality and after that we check the connectivity related stuff of the
application, Then we uninstall the build and verify how application respond when
we interrupt during installation and also we check interruption scenarios when our
application request network call .
We also do low network/poor connectivity testing during network call. Upgrade from
older version to newer version. navigation in the application without network if it
supports this feature.Compatibility of app on different kind of phones like having
external buttons & devices do not have external buttons or other than
this flip phone etc
1) 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 ,
uninstallation 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 n so on.
Also if your application is accessing network then you must see the logs generated
during that period so that sensitive information should always go in encrypted
form, like if it is payment related CC number etc .
4. 2) Examples of Defects found during Mobile Testing
Issue is saving contact on phone memory or deleting it or some time conference call
issue while an active call is there n like that.
3) Testing on Different Networks (WiFi/Cellular Data Plan)
We have to test the application on 2G/EDGE, 3G and Wifi network because some
times application faces issues on slower networks
4) How do you test patches/defect fixes intended for an app already in production
We generally do regression of relative module and mainly focus on the area which are
related to the bug fixes as per the developer as we can not do entire regression in
very short span of time, so just do sanity of rest of the application modules on
high priority devices(on which you have major customer base if you have crunch
of time members & if team size is not an issue do sanity on all major devices)
5) what major criteria are taken into consideration when testing sms/mms/call logs
6) Defect Tracking Mechanism
This is of same nature like any other software testing project using any tool like Jira,
Bugzilla etc
7) 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 under stand the cause of
issue.
8) Testing performed/modules handled by testers based on their project
We generally divide the modules among the team members and then shuffle the
modules among team member with different devices.
9) 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.
10) what tools you use for performance testing and automation ?
@ Performance testing of the Web service which your application uses you can use
jMeter, it is an open source tool which can be used to test the api's performances.
@Automation: It is very subjective term & totally depends on the project need and
type of application , there are several paid tools available in the market like
SeeTest, Ranorex, Silk Mobile etc while good free automation tools are Calabash,
Appium , Robotium for Android, KIF for iOS and using free tools you require some
5. coding skills like ruby or Java.
If you can send me you specific requirement, i can help you more on this.
11) 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.
12) How to check CPU usage and memory utilization of an app ?
You can use various tools like Usemon,CPU Usage Monitor, 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
13) 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.
14) Types of mobile applications?
Mobile applications can be broadly categorized into three categories i.e, Native app,
Web app and 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 accelerometer, the compass, the phone book etc. Native apps
c an use the devic e’s notific ation system and c an work offline. Native apps are installed
through an applic ation store (suc h as Google Play or Apple’s App Store).Native mobile apps
provide fast performance and a high degree of reliability. Example of native app: Temple
Run, Candy Crush etc.
Web App:Web applications are mobile web portals that are designed, customized and
hosted spec ific ally for mobiles. They are ac c essed through the mobile devic e’s web browser
6. using a URL. Web apps became really popular when HTML5 came around and people
realized that they can obtain native-like functionality in the browser. Mobile web
applications cannot use device functionality. Example of web app: 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 c ontainer, and leverage the devic e’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. An 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. Example of hybrid app: Flipkart, Facebook, Twitter etc.
Full Form of various application extensions:
1. iPA: iOS APP Store Package
2. APK: Android Application Package file
3. exe: Executable File
4. jad: Java Application Descriptor
5. prc: Palm Resource Compiler