Mobile app testing job interview? Be ready for these 25 questions
As everyone knows the mobile apps have become extremely popular for the last few years. People use mobile phones or tablets to get ALL the information they need. That is really quick and simple way to get any information using fingertips. People spend most of their free time in mobile devices. They actually leave online. That's why mobile apps & mobile app testing are so much important nowadays. Because of that mobile applications became so popular so all companies want to hire the most experienced and advanced mobile QA engineers. Mobile QA interview questions will depend on company, HR, project and tons of other conditions but we want to help you to go through this successfully so before you will get mobile app testing jobs you probably face following questions on your interview. Hope you will be ready before applying app testing jobs as we have prepared mobile testing interview questions and answers for you.
1. What are the types of mobile applications?
Answer: Some people think that there are only 2 types of mobile applications.
(App which is installed from market or using direct download link. It has the ability to use device-specific hardware and software. Example of the native application PokemonGo)
(App which opens via any mobile browser for example Safari on iOS good example of such app is m.facebook.com)
But there is actually the third type of app:
(These are apps which combine native app and web app. They actually wrap "webviews" within native code to deliver their content. As they are built on one single base can add functionality and have multiple versions of the app. For example iOS facebook app is a hybrid app)
2. What is mobile emulator?
Answer: The mobile emulator is …. Wait I think you should google it :) But it is not the answer on mobile app testing interview questions. Nevertheless mobile phone emulators allow you to check the responsiveness and functionality of the website across different mobile platforms, such as iPhone, iPad, and Android without actually having the devices.
3. Mention all types of software testing you know?
Answer: This one is pretty simple if you know basics. So here is most common list:
White/Black box testing
4. What is the latest version of iOS/Android?
Answer: Right now the latest iOS version is 12 and the latest Android version is 9. Please note that both platforms update quite frequently so be sure to recheck before answering on mobile QA interview questions.
5. How to record a log from Android/iOS device?
Answer: There are 2 types of logs. Crash logs (logs only crashes) and general app log. To find crash log from iOS device you can use iTunes. Or check the recorded log in device settings. To find crash log via iTunes you need to:
1) Sync iOS device with iTunes, then look in the following locations: (Windows users)
Windows XP: C:\Documents and Settings\USER\Application Data\Apple computer\Logs\CrashReporter\
Windows Vista & Windows 7: C:\Users\USER\AppData\Roaming\Apple computer\Logs\CrashReporter\MobileDevice\
2) Search for the appropriate device name, then look for the file by app name and time stamp
1) In the Finder, hold down the option key and open the Go menu and choose Library. Then navigate to ~/Library/Logs/CrashReporter/MobileDevice//
As iTunes can not be installed on Ubuntu you can check logs in iOS device directly. Check details below:
1) Open iOS settings > Privacy > Diagnostic & Usage > Diagnostic and Usage data > Copy log
To record log from Android device you need to install and run android studio, connect device to PC (be sure you enabled file transfers). Open an app project, run the app on a hardware device or emulator. Click the logcat tab. By default, the logcat Monitor displays just the log messages for your app running on the device or emulator.
6. What are the extensions of iOS/Android files?
Answer: IPA file - Apple's iOS or iPhone OS. APK file - Google's Android. APK files are the type of archive files in zip format packages based on the JAR file format with .apk filename extension.
7. What defect tracking tools are used for mobile testing?
8. What mobile automation tools you know?
Answer: There are various Mobile Automation testing tools but we have picked 5 most effective ones:
Appium (Android and iOS)
Calabash (Android and iOS)
MonkeyTalk (Android and iOS)
Robotium (Android only)
9. What mobile screen recorder tools you know?
Answer: The most popular ones for Android are:
Az screen recorder;
Mobizen Screen recorder;
ADV screen recorder.
As for iOS, there is inbuilt screen recorder under the Control Center within iOS 11 or later.
10. What types of mobile networks you know?
Answer: There are 5 types:
2g (download speed - 0.1Mbit/s)
3g (download speed - 4Mbit/s)
4g (download speed - 15Mbit/s)
4g plus (download speed - 30Mbit/s)
5g (download speed - 1-10Gbit/s)
11. Do you know what Scrum is?
Answer: Scrum is a software development process that has been used to manage work on complex products.
12. Do you know what Kanban is?
Answer: The same as Scrum, Kanban is a type of Agile methodologies which helps to reduce and structurize time for creating and supporting differ types of projects.
13. List and describe common types of bugs on Mobile Devices?
Answer: The most common classification of issues consist of:
Critical: Application or website crashes after an attempt to access some functionality
Blocker: Some important for application or website functionality is inaccessible, for example user cannot Log into application
Major: Some functionality works incorrectly or shows inappropriate data
Minor: Not critical Issues related to UI or UX. For example wrong alignment of text or wrong texts
Trivial: Wrong paddings and margins on the page and other issues that can be fixed in the next releases
14. Tell about main principles of security testing on Mobile Applications?
Answer: The most important key principles of security testing are:
Vulnerability Analysis Includes processes of manual or automated searching of vulnerabilities in the application. Usually performed by automated scanners but sometimes can be done manually
Penetration Testing Type of security testing that usually performed on the build that is ready for release. Main task of Pentesting are attempts of security tester to break the app by exploiting the vulnerabilities found during Vulnerability Analysis. Pentesting should be performed regularly on the same build that is in Production but in a different environment. Also, a very important thing is usage of similar data during Pentesting that is used on Production.
To prevent appearance of security vulnerabilities scanning and active monitoring should be performed regularly at infrastructure and application levels to identify issues. If critical issues were found during scanning they should be fixed as soon as possible.
15. What is GDPR and why application should be GDPR compliant?
Answer: The General Data Protection Regulation is the new law which affects all applications that published for users in European Union. If application collects user's data and you want to publish it for European users it should be GDPR compliant. GDPR compliant app allows users to control their own data. For example user should be able to delete his own data from whole application database.
16. While performing end to end mobile testing what are the major criteria, you have to take in consideration?
Answer: There are several major criteria:
Installation of the new build;
Launch of the application without crashes;
Ability to Log Into application with valid credentials;
Support of Landscape/Portrait orientations;
Performance of the application in Offline mode(If it's available);
Response time and functionality of key features;
Uninstallation of the build.
17. Which test artifacts do you know?
Answer: There are 4 most used test artifacts:
Test Case & Test Suite;
18. What is API?
Answer: API (Application programming interface) - it is a set of clearly defined methods of communication among various components.
19. Which types of requirements do you know?
Answer: The most used requirements are:
20. Which suspend events on mobile device do you know?
Answer: All mobile devices have a lot of different suspend events. Here are some of them:
Low battery signal;
21. What are the most important factors for this type of testing?
application type defined by the business functionality (banking, gaming industry, social networking, education);
target audience (user, company, educational environment);
the channel through which the application is distributed (e.g., App Store, Google Play or direct distribution).
What is mobile application testing? In simple terms, we check whether the application fulfills the expected function, which is usually described in the specification or dictated by business processes.
Therefore, functional testing can be conducted by requirements. In this case, the test cases are generated, the technical task is used to create them on the basis of business processes. Use cases are designed after that. They describe the scenario of daily or continuous application use.
22. What are the main Techniques of Functional Tests?
Check the correctness of the required fields.
Ensure that the required fields are not displayed on the screen as optional.
Make sure that the application's work meets the essential requirements during the launch/exit.
Make sure that your application goes into the background in case of incoming call. You will need another phone for this.
Check whether your phone can store, send and receive SMS-messages during the app runtime. To do this, you will need another phone to send a message to the device with an already running application.
Make sure that the device works under multitasking mode whenever necessary.
Check how important options work with social networks - Share, Publish, etc.
Ensure that the application supports payment transactions through payment systems like Visa, Mastercard, Paypal and others.
Check the adequacy of the page scroll scripts.
Check whether the proper navigation between relevant application modules exists.
Make sure that the number of rounding errors is minimal.
Check error messages, for example, the message "Network error. Please try again later" in case of wrong/not correct network connection.
Make sure that the installed application does not interfere with the normal operation of other applications and does not consume their memory.
Check whether the application can return to its current state after interruption of something like hard reset or system crash.
Installing the application should take place without significant errors if the device meets system requirements.
Make sure that the automatic launch of the application works correctly.
Check how the application works on all generations of devices as 2G, 3G, and 4G.
Perform regression testing to identify new programming errors in existing and already modified areas of the system. An additional performance of all previous tests to check the behavior of the program after the change.
Ensure that a user manual is available.
23.Is there a Standard Methodology for Creating Tests?
Often, the system has a lot of features, and we do not always have the opportunity to test them all. Therefore, we do the following before we start functional testing:
we prioritize certain test cases and use cases;
we manage time by the priorities and then pay attention to the most important ones.
Selecting any standard scripts for functional testing is difficult because of applications variety. But we can define common modules, make test cases for them and continue to use them modifying according to specific requirements.
You should check up positive and negative scenarios for each function. The scenario is considered positive if the user finally reaches the target (creates an item, sends a message, etc.). A negative scenario, respectively, on the contrary, happens when an error occurs at some of the steps, and the target cannot be achieved.
24.Mobile Application Testing Basics: Positive and Negative Scenarios
For example, let's consider a login/logout and the account creation (section, member, or any other item).
Standard login/logout processes may include the following options:
registration: with login and password, without a password, via social networks, etc.;
authorization: login and password, through social networks, etc.;
logout: independent, after the session expiration, etc.
A positive scenario:
Registration inside the applications is available through the described methods in the technical task.
You can create an account by filling in only required fields.
You can create an account by filling in all fields completely.
After the registration, you can log into the application. Registration data is correctly stored in the profile (e-mail, password, personal information, etc.).
By registering on one device, you can log in on another device as the data is correctly stored on the server and is available for you.
Logout process is working correctly.
Password recovery is working properly. A negative scenario (the most obvious):
Re-registration with one and the same e-mail, or with the same username is unavailable.
Registration without filling in the required fields is not available.
Registration is not available if all the fields are left blank.
Registration is not available if the format of the input data does not meet the requirements.
Login process with empty fields is not available.
Login process with an incorrect/deleted/blocked login is not available.
Login process with an incorrect password is not available. Let's create a contact. It is logical to assume that if a user creates a contact, then he/she should be able to view, edit and delete it. This is a basic set of features, which an item should have.
A positive scenario:
Creating, modifying, viewing, and deleting contacts are available.
Creating a contact with a minimum set of data is available.
Creating a contact with a maximum set of data is available.
When you create a contact, data is correctly processed as described in all technical tasks.
The contact is available for viewing after you create it.
Changes of account data without filled required fields/data/elements are unavailable. Saving the contact without them shows an error.
After deleting, the contact is no longer available.
A negative scenario:
Creating two identical contacts is not available (this can be a positive scenario).
Create a contact with the missing required elements/data is not available.
The process of a functional test includes testing the user interface:
Checking screens for the match with the layout.
Checking the operation with native gestures: swipe, multi-touch, etc. The application should respond to a certain way.
Checking the condition of the elements: keys change color when pressed; the lists are expanded and hidden, etc.
Checking localization, if it is stated in the application. It is important to pay attention to the layout as many names in other languages are much longer than in English.
There are many other mobile application testing interview questions and answers.