Google News
logo
Mobile Testing Interview Questions
Mobile Testing is the process by which applications for modern mobile devices are tested for functionality, usability, performance, consistency, reliability and much more. 
 
There are 2 types of mobile testing :
 
1.  Automate testing
2.  Manual testing
Following are the various types of mobile operating systems :
 
Android OS : It was developed by Google Inc.

iOS : It was developed by Apple Inc.

Series 40 [S40] OS : It was developed by Nokia Inc.

BlackBerry OS : It was developed by BlackBerry Limited.
Mobile internet usage continues to rise even as desktop/laptop internet usage is declining, a trend that has continued unabated for years. As more and more users spend an increasing amount of their time on mobile devices, it’s critical to provide a good experience on your mobile apps.
 
If you’re not testing the mobile experience your users are receiving, then you can’t know how well your application serves a large and growing portion of your users. Failing to understand this leads to dreaded one-star app reviews and negative feedback on social media.
 
Mobile app testing ensures your mobile experience is strong, no matter what kind of app you’re using or what platform it is developed for.
There are three general categories of mobile applications that you may need to test today :

* Native Applications.
* Web Applications.
* Hybrid Applications.
 
Native Applications : Native Apps are designed specifically for a particular mobile platform (today this typically means either Android or iOS) and are generally downloaded and installed via an app store like Apple’s App Store or Google’s Play Store. This includes both pure native apps built on Java/Kotlin for Android or Objective-C/Swift for iOS, as well as cross-platform native applications built with frameworks like ReactNative, Flutter and NativeScript.

Web Applications : Web Apps are designed to be accessed on a mobile browser. Web apps can be either a responsive version of a website or a progressive web app (PWA), which adds additional mobile-friendly features.
 
Hybrid Applications : Hybrid Apps are designed as a compromise between native and web apps. Hybrid apps can be installed via app stores just like native apps and may have some native functionality, but at least partially rely on operating essentially as web apps wrapped in a native shell.
Here are 10 different ways of testing mobile applications :
 
Functional Testing : Tests the functioning and flow of apps.

Usability Testing : Tests the user’s experience with apps.

Compatibility Testing : Tests the compatibility of apps on different devices, networks, and hardware.

Security Testing : Tests the application's ability to keep the user’s personal information safe and confidential.

Performance Testing : ensures the app does not malfunction.

Installation Testing : Tests the installation and update process of apps.

Localization Testing : Tests apps to align geographical and cultural aspects with the end-users to ensure localization so that consumers don’t skip past it.

Mobile-device testing : Testing apps on mobile devices for better functioning.

Manual Testing : checking the functioning of the app manually to identify errors in the interface.

Automated training : used in tedious situations where manual testing is not enough, automated testing ensures quality and faster release of products.
Mobile devices are usually handheld computers. There are mainly two types of mobile devices which later have many subtypes depending on their characteristics, such as physical dimensions, hardware, and software capabilities:
 
The mainly two types of mobile devices are : 
 
* Tablets
* Smartphones mobile
The main differences between tablets and smartphones based on their features :
 
Tablets : A tablet is a type of portable computing device. Unlike the traditional computer, the tablet doesn't have a keyboard or mouse; however, the entire screen is touch-sensitive. This is mainly used as a smaller substitute for laptop or reading devices, and it is generally larger than smartphones in size.
 
Smartphones : A smartphone is a powerful mobile phone which provides a lot of additional features such as a great camera, watch, calculator, calendar, online games, and many other software applications benefits as compared to normal mobile phones. It is mainly designed to run a wide variety of applications along with providing basic phone services. It is generally smaller in size than a tablet.
It is commonly called the Instrumentation Test Runner and is basically a runner which is responsible for smoothly running the test case on an application package. The tools that offer API and the SDK tools are present in this runner and it is responsible for writing the programs that control the Android gadgets. 
The use of mobile apps is becoming quite common and currently millions of apps are developed each day across the globe. Although they have different purposes and use, a few of the features are quite essential in all of them. This includes:
 
* Reliability
* Compatibility with other technologies
* Scalability
* Efficiency
* Mode of operation
* Open Source Technology
* Wider Adaptability
* Fast operations
Commonly used defect tracking tools used for mobile testing are :
 
* JIRA.
* Redmine.
* FogBugz.
* Bugzilla.
* HP ALM.
* Rally.
* YouTrack.
* Mantis.
* Trac.
* Trello.
11 .
How would you test CPU usage on mobile?
To test CPU Usage on mobile, I would use advanced apps like CPU Monitor, CPU-Z, CPU Stats, etc. as they can record all details about the processes running on mobile devices.
The Android testing framework is an open-source framework used by developers to record Unit tests and User Interface (UI) tests for Android devices.
 
The 5 commonly used Android testing frameworks are :
 
* Appium
* Detox
* Espresso
* Calabash
* UI Automator
iOS testing frameworks assess the performance of iOS applications on the Apple device to record and trigger user actions based on the interaction with the user interface.
 
The 5 commonly used iOS testing frameworks are :
 
* Appium
* XCTest/XCUITest
* Detox
* Calabash
* Earlgrey
Difference between simulator and emulator in mobile testing :
 
Simulator : Simulator is electronic network simulation equipment or base station equipment for CDMA/CMA mobile phones. It is used to latch the home networks without roaming services and facilitates users to make voice calls, data calls, and SMS.
 
Emulator : Emulator is software used to test the mobile application without a live handset.
There are mainly two types of automation tools available to test mobile applications in mobile testing :
 
Object-based mobile testing tools : Jama solution, Ranorex, etc.

Image-based mobile testing tools : RoutinBot, Egg Plant, Sikuli, etc.
16 .
What do you know about Port Testing?
This is basically a procedure to simply test the same functionality on the other devices for understanding its behavior on the different platforms.
Difference between Web testing and WAP testing :
 
Web Testing : Web Testing is a form of testing mainly related to testing web applications such as websites, portals, and blogs.

WAP Testing : WAP Testing is mainly dedicated to the WAP (Wireless Application Protocol) used in network applications.
There are a number of popular and open source tools and frameworks for testing your mobile apps. A few of the most common include :
 
Espresso  : Android-specific and geared towards developers (recommended by Google).

XCUITest : iOS specific and geared towards developers (recommended by Apple).

Appium : Cross-platform and easy to use, with strong community support.

Calabash : Cross-platform with support for Cucumber, Xamarin-based and also easy to use.
Another type of testing to keep in mind is automated visual testing. Traditional testing experiences rely on validating against code, but this can result in flaky tests in some situations, particularly in complex mobile environments. Visual testing works by comparing visual screenshots instead.
 
Visual testing can be powerful on mobile applications. While the traditional pixel-to-pixel approach can still be quite flaky and prone to false-positives, advances in visual AI – trained against billions of images – make automated visual testing today increasingly accurate.
Advantages :
 
* Easy to access without downloading.
* Easy development.
* Easy update

Drawbacks:
 
* You cannot access file systems and local resources on websites.
* Many existing websites do not support offline capabilities.
* You have to open the website only in a web browser.
* It is not easily redistributable such as native and hybrid apps which appear on the App Store and Google Play.
Advantages :
 
* The development cost of hybrid applications is cheaper than native applications.
* These are mainly built for cross-platform use.
* The maintenance of hybrid applications is simple, as there are not many versions to maintain.
* These applications provide some features available on the device itself.
* These can be found in the App Store, making delivery easier.
* They already have a browser embedded within the application.

Drawbacks :
 
* Hybrid apps are slightly slower than native apps because of the outdated technology used compared to native applications.
* In these applications, graphics are less accustomed to operating systems than native apps.
Advantages :
 
* It can be accessed via the original application you have installed on your mobile device.
* It provides the full advantage of all device features such as camera, GPS, accelerometer, compass, list of contacts, etc.
* You can use the device's notification system and work offline.
* It is built in a way to provides the best user experience.
* As it is found in the App Store, so redistribution is easy.

Drawbacks :
 
* The creation cost of these types of applications is very high.
* The maintenance is also very high.
23 .
What do you mean by the Application Package?
The application package simply means the target application which needs to be tested for finding various errors, performance parameters, and other important information regarding an application.
Device testing is typically being done to test mobile devices, mobile app testing will include testing an app that will be running on the selected device.
 
When we call it instrument testing, hardware becomes a part of testing. In the case of mobile application testing, it depends, that is, if hardware integration is required for the application under test, then hardware testing will be involved.
 
Automation is possible for mobile device testing as well as mobile application testing.
Real Device :
 
* You have to spend a lot to get a real device
* It has a fast processing speed
* Network latency may be normal
* Debugging is not so easy
* Web applications can be tested in the usual way
* It always gives accurate results

Emulator / Emulation :
 
* It is almost free
* It is slower than real devices
* It has lower latency than actual devices
* It provides step-by-step debugging of the application
* Web applications are very easy to test
* It cannot simulate all types of user interactions; So it can sometimes give wrong results.
* It scores low when it comes to reliability.
A simulator/emulator cannot mimic the following features :
 
* Mobile device battery
* Mobile device camera
* Interruptions such as incoming calls and SMS
* Not so realistic simulation for mobile device memory usage.
There are various tools available in the market like google play or app store from where you can install apps like CPU Monitor, Usemon, CPU Stats, CPU-Z etc these are an advanced tool which records historical information about processes running on your device.
28 .
What all major networks to be considered while performing application testing?
You should test the application on 4G, 3G, 2G, and WIFI. 2G is a slower network, it’s good if you verify your application on a slower network also to track your application performance.
29 .
What are MT and MO in SMS?
Sending message is known as MO (Message originate) and receiving the message is known as MT(Message Terminate)
30 .
What is GPRS and how it works?
GPRS is General Packet Radio Service which works on a mobile network with the help of IP transmissions. GPRS provides the transmission of IP packets over existing cellular networks. It provides you internet services on mobile.
* Easy Availability
* Ability to run mobile devices on multiple systems and networks
* Not only does the cloud have the ability to test apps, but also the ability to update and manage
* effective cost
* High scalability
* The same script can be run on multiple devices in parallel.
* Less Control
* There is no high level of protection
* Internet connection dependency

Some useful cloud-based tools : Zamarin Test Cloud, Perfecto Mobile Continuous Quality Laboratory, Core Mobile Testing.
Critical : Your phone system crash when testing particular feature in your device

Block : Unable to do anything though phone is on unless you reboot your device

Major : Unable to perform a function of a particular feature

Minor : Under minor bugs usually GUI bugs fall.
Robo-electric testing framework is used to make testing easy without the use of an emulator. Testing on Android Testing Framework for emulators or devices is difficult, and we have to run and build test cases which sometimes take lots of development effort. The Robo-electric framework lets us run Android tests directly on JVM without requiring a device or an emulator.
A/B testing for ios includes three steps :
 
Configure a test : It prepares two versions of your iOS app (A&B) and test metric

Test : Tests two iOS versions above on devices simultaneously

Analyze : It select and measure better version to release
Challenges that tester faces while doing mobile testing are :
 
* Subscription model
* High Costing
* Lock-in
* Internet connectivity issues
* Automation is image based and time-consuming
* Automation cannot be used outside the framework
It totally depends 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 applications also need to be tested.
Detox is a Javascript-based mobile testing framework that enables a robust and quick test execution without any external tools.
 
It is in-built in the application and starts with the app launch.
 
The characteristics that make it stand out are :
 
* Easy debugging compared to other automation frameworks.
* Quicker test execution.
* Easy integration into apps with react native.
Monkey tool helps mobile testing by providing :
 
* Debugging options.
* Types of events.
* Frequencies.
* Operational constraints.
* Configuration options.
Compatibility testing is done to check if the app is compatible with different :
 
* Operating systems – (Android & iOS).
* Browsers (Chrome, Firefox, etc.).
* Devices.
* Network environments- 2G,3G,4G, WIFI.
* Internal hardware.

Compatibility tests are of 2 types :
 
Backward : tests the behavior of a mobile app with older versions of a software.
 
Forward : tests the behavior of a mobile app with new, developing software and beta versions.
The sanity test on apps can be performed based on 5 metrics :
 
* Performance on different devices.
* Performance in various network environments.
* Installation and update of apps.
* If the app allows calls when running in the background.
* Media compatibility.
42 .
What is the extension of Android and iOS files?
The extension of an Android file is .apk and an iOS file is .ipa.
While testing apps using the Black Box testing method, it is important to :
 
* Test web applications on various mobile browsers like Chrome, Firefox, etc.
* Test applications on multiple devices.
* Make calls and send messages while the app is running in the background.
* Change the IP address and port to ensure the device connects and disconnects properly.
44 .
How would you define AVD?
AVD stands for Android Virtual Device. It is an Android emulator to test applications on PCs.
PRC stands for Palm Resource Compiler. It has a file format similar to archives and stores resource data.
 
ADB (Android Debug Bridge) is a client-server program that enables the development of Android apps. It consists of 3 components- a client, a daemon and a server.
.apk : Android Application Package File
.exe : Executable Files
.ipa : iOS App Store Package
.prc : Palm Resource Compiler
.jad : Java Application Descriptor
.adb : Android Debug Bridge
.aapt : Android Asset Packing Tool
If your devices and applications support multi-touch features, such as pinch-to-zoom effects on iPhones, be sure to include plenty of test cases involving touching the screen in multiple locations simultaneously, especially when using a soft Typing on the keyboard.
While there is no concept of double-clicking on touch screen devices (although your application can be implemented specifically), some devices such as Android smartphones distinguish between long touch and short touch. Pressing and holding an item will bring up a context menu in the middle of the screen while clicking on the same item will automatically perform the first task in that context menu.
MDM i.e. Mobile device management is a type of security software that is used in IT to manage, monitor and secure employees’ mobile devices across multiple mobile operating systems being used by many mobile service providers and in the organization. Are posted.
 
MDM is usually combined with additional security services and devices such as mobile application management to create complete mobile device and secure enterprise mobility management solutions.
Resistive touchscreen : It consists of two layers that form an overlay on the screen. When the finger is placed at any point on the screen, the two forms receive contact and coordination. These are relatively inexpensive and are found right on most budget phones. The downside is that a certain amount of pressure is required to enter the touch. As time passes, there is some degree of damage to the screen.
 
Capacitive touchscreen : The entire screen is coated with a capacitive material that carries a certain amount of electric charge. When an operating object is placed on the screen like a finger, the capacitance changes at that point, and thus the coordinates are obtained.
Mobile security tests include :
 
* Check for multi-user support between them without interfering with the data
* Check access to files stored in the app by any unexpected users
* Encryption or encryption method used for sensitive data communication
* Find sensitive areas in the tested application so that they do not receive any malicious content
iPhone tester : Test your web interface in iPhone size frame
 
Appium : This is a test automation tool used with native and hybrid iOS apps
 
iPad Peek : Test your web app using the iPad interface
 
Test Studio : It enables you to record, create and run automated tests for your iPad and iPhone applications.
53 .
How can we install an SD card in the emulator?
To install the SD card in the emulator, you need to use the command :
 
MKsdcrd-I mySDCard 1024M mySdCardFile.img
Mobile App Trial Tracking Tool :
 
* Cumin
* Qc
* Rancid
* The rally
Appium is an open-source mobile-application test framework that can be used with web, native and hybrid apps. It enables UI testing for mobile applications and is compatible with both Android and iOS devices.
Apium Inspector is a visual tool used to analyze the elements of an application and its ability to interact with them to obtain basic information.
 
It is used to record and play application behavior by inspecting the DOM and evaluating test scripts in the desired language.
The prerequisites for running a test on Appium are :
 
* Install eclipse
* Android SDK
* JDK (Java Development Kit)
* TestNg for Eclipse
* Selenium server jar
* Appium Client Library
* APK app information – Google Play
* JS (included in current Appium versions)
* Appium for Windows