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.
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?
- Variety of Mobile Devices-Mobile devices differ in screen sizes, input methods (touch, normal) with different hardware capabilities.
- Diversity in Mobile Platforms/OS-There are different Mobile Operating Systems in the market.The major ones are Android, IOS, Windows Phone, and BlackBerry.
- 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.
- 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.
- A 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.