Mobile expert, David Dang, explores the key differences between the functionalities and different interactions of mobile vs desktop testing."As you get into mobile vs desktop testing you will realize that there are features based within mobile that you don't have in desktop testing. When testing with mobile you need an understanding of the different applications that can be served on a mobile device." - Mobile expert, David Dang
- Mobile Web - Mobile webs are web applications that are accessed using Chrome, Safari, Opera, etc... from mobile devices.
- Native App - Native apps are applications created for use on a single platform such as Android or iOS. Even though the app might be the same, the code base behind the each platform is not the same between iOS and Android.
- Hybrid App - Hybrid apps are a combination of native app and web app. It uses native app as a container with web content inside the app. Companies use hybrid applications because they can push out an application much more quickly since the web content is embedded with in the container. Another reason may be so that they can create the container in iOS or Android and apply the HTML info in that container so that they have a single code base.
When testing mobile vs desktop, there are certain features available on mobile that are not available on web.
- Mobile device screen size - When testing mobile applications you want to make sure to check that the visual elements and screen size is not effected when switching between landscape and portrait view.
- Mobile uses network connections such as 2G, 3G, 4G, LTE, WIFI - When testing on desktop most people are on the WIFI network of their landline, so the connection is typically pretty quick. However, when testing an app on mobile you have to take the network speed into consideration, i.e. if you're on a 2G network your application may be effected by that network speed.
- Landscape and portrait view mode - In desktop testing you don't have the functionality available to turn your screen between landscape and portrait mode, but this is definitely something you want to test on your mobile application.
- Swipe - When testing on mobile applications you want to ensure you have the functionality to swipe back and forth from page to page
- Pinch and zoom - Similar to the "swipe" functionality this is also a functionality pertaining to testing on mobile app but not necessarily on desktop
- Voice to text - If you would like to send out a text or type in a search you don't have to actually punch in the info, instead you can click on the microphone and do voice text; this feature is typically not available on desktop.
- Built in camera - A lot of the native apps have this feature incorporated into them. For example, if you have a banking app you can utilize the camera functionality to deposit a check. Another example would be a mobile app that utilizes bar code scanning, in this scenario you can use your camera to access the bar code (this may be utilized for inventory management, etc. - which is also unique to mobile not desktop).
- Accelerometer - For example, if you had an app for bowling in which you can flick the screen to shoot the bowling bowl down the alley... if you have this feature in a native app you would want to make sure to test for it.
- Location-based - Mobile apps are able to identify where your device is. This is an important feature, take for example, if you had an ecommerce app that sends out daily specials by accessing the location of the users device. If you were in Florida it would make sense to get specials on sunglasses and flip-flops but not necessarily a snow suit, so you would want to make sure this feature works correctly on when testing on mobile.
- Interruptions such as getting a phone call in the middle of checkout - If you are doing something on a mobile app you want to make sure the functionality of interrupts is available, such as when a phone call is coming in. This is a very unique feature to mobile.
- On/off network - If you happen to be in the middle of a bank transaction and are in the driveway using your cellular network and then were to walk into your house you would want to make sure the switching to cellular network would not effect the performance of that app.
In addition to testing the functionality of the mobile app, should you test all of the mobile features?
Maybe... Maybe not. It's really up to the scenario at hand. However, here are some key considerations when it comes to mobile vs desktop testing:
- What type of application are you testing? (mobile web, native app, of hybrid app) - If you are testing a mobile website which does not have an accelerometer functionality or camera base feature you would not need to worry about those aspects. However if you were testing a native app which did include the functionalities of an accelerometer, location, or camera to utilize those mobile features, you would want to test those capabilities. So, it depends on the app and the aspects that belong to it.
- Does your app use any of the device features?
- Is your app impacted by network speed? - If you have a mobile app that does a lot of data processing you would want to test for network speed. For example, if I were using a 2G network which involved a lot of processing through the server the 2G network may slow things down and/or even crash the network.
- What type of testing are you focusing on? (usability, functionality, performance, installation, interfaces, etc.) - Pinpoint the area you need the most testing. At a minimum you want to make sure the functionalities work as well as the feature base of that mobile app works.
We hope this helps you better understand the key differences in mobile vs desktop testing. Please contact us at contact@zenergytechnologies.com with any questions.
>> Subscribe to Zenergy on Youtube for more videosRead our blog, Bugs, Bugs, and More Bugs, by Bob Galen, for tips on how to exterminate your bugs the right way.