I’ve read many blogs, posts in forums, spoken to software testers referring to “mobile testing” when they really mean mobile application testing. I wanted to start off this blog defining terminology.
Mobile Testing encompasses mobile application testing, mobile device testing, mobile phone testing, mobile system testing.
Stand out from the Crowd!
40% OFF – Mobile App QA e-Learning Course
Mobile Application Testing is testing the application on a mobile device. What kind of testing does this entail? Is it strictly GUI testing which is making sure the application is functional according to the requirements? Or is testing the application’s functional performance on a mobile phone the expectation? The clarification of what testing is to be done is between you and your stakeholders must be defined and most often is not. However, software testers do not have the experience to do system testing and require some guidance on expectations. Requirements help but requirements for mobile applications usually only consider the functionality of a software application without considering how the application works within an entire system.
Mobile Device Testing is testing hardware and operating system. Does the Operating System install? Does the device power on? Do the LED lights work as expected? Does the battery charge when the AC Adapter is plugged into the phone? Distinguish the type of mobile device: completely independent mobile device which communicates via cell network communication or even radio communication like tablets, mobile handset type devices, mobile phones, PDMs, monitors (like what you see in hospital rooms) etc.
Mobile Phone Testing is doing any testing on a mobile phone. This kind of testing could mean performance testing, network communication testing, GUI functional testing, downloading/installation of application tests. When people discuss Mobile Testing, often times the testing is in reference to a mobile application which works on a mobile phone and disregards other types of mobile devices.
Mobile System Testing – combination of all testing types described above. Testing a mobile application on a mobile device could entail tests which include the application retaining clock information after the battery of the device was drained and recharging. Here, the test case is inclusive of operating system functionality, the clock, the charger, and then if the software receives the information based on what the operating system receives. If the application needs to communicate data to another entity like another phone, a server somewhere, does the network communication work as expected?
Mobile Application Testing is generally regarded as the term for all Mobile Testing techniques. As such, many software testers are approaching Mobile Testing as how the application works on a phone. The idea of the application on a mobile device as system testing is often overlooked. Tests which include how an application behaves as a device charges for example, is not being done before the release of the application.
Software testers who are assigned to test applications on mobile devices need to go beyond thinking “if I tap on the icon, does the application start” or “if I press the cancel button, does the operation/function get cancelled.” Functional application testing is important but, the application is a part of an entire system and not just a singular entity. The application is completely dependent on the entire system, to function within the system, is a part of the system. Temperature, memory, CPU Speed, Database searches are all affected when a device is charging and these tests are continually not considered.
In future weeks, I will share more information on how to develop a Mobile System Testing strategy. I will share test ideas, real life testing examples, how to generate test cases based on project constraints, rhetoric to help explain to managers why extra time is needed to incorporate a Mobile System Testing strategy on projects. Discussions will also include risks and especially business impact of not incorporating a Mobile System Testing strategy.