Biggest challenge : Device Fragmentation
I thought in mobile application testing we are facing more issues as compared to a web application. Both applications contain cloud parts, database, native-hybrid application. In web application team has to deal with particular mostly used a browser and many devices are available for mobile application.
The mobile devices used by consumers create the most challenge to mobile testing. Tens of thousands of different client devices could be used to access your mobile app or website and they must therefore, all be considered when testing your mobile applications. Adding to different API versions, dealing with RAM, display sizes, and more interruptions like receiving calls messages, and the permutations get crazy-big! You can sacrifice coverage across device/OS combinations to an extent, but when you reduce the number of device types that you test against, you are taking a chance that your application might not work for a number of potential customers.
Real devices have the advantage of having all of the limitations and quirk present in hardware, the actual client operating system, and firmware combination used by your target consumers. However, testing with real devices can be expensive, depending on how you approach it. Resource handling is also another problem for companies. After some time new devices become useless as industry growing rapidly. The best way to manage is only working through a simulator. You might be able to get a manufacturer or network operator to loan your devices for testing, but you need to join a waiting list and convince the hundreds of manufacturers and hundreds of mobile network operators that you should be their priority.
Emulated devices, on the other hand, are relatively easier to manage. You can switch device types by simply loading a new device profile, and instantly you have a new device that presents itself to your native mobile or web application in the same way that the real device would. The big disadvantage of emulated devices is that they lack the quirks, faults, and characteristics that only a real device can provide. An emulated device may not give the pixel-perfect accurate rendering that you’re assured to have a real device solution.
So, First, start testing in an emulated environment to take advantage of the speed and device diversity that an emulator can provide. We can use for development and testing purpose. Emulated devices take place early life cycle of a product and project will start with low cost. The addition of real devices to your test plan later in the development the cycle is helpful for validating that applications are functioning as expected, and certifying that all development requirements and objectives have been met.
About Me: I'm Software Engineer with experience in Software Testing and Quality. I love playing with tools which improve the quality of Product. @nnishantgohel.
Software engineer - Juniper Networks INDIA
8 年Tools improovs quality??? Really??