Testing iOS mobile application is always an exciting job for QA. it does have a lot of challenges as well. before doing iOS mobile application testing, QA needs to understand the application how it is being developed.
there are three types of application we can build in iOS.
- Native Application
- Web application
- Hybrid application ( mix of native and web)
A native application is built on iPhone SDKs. it like any other software development SDK.
The web application where we just create a wrapper to the website and create an application out of it. in iOS terminology, we can call it as Web forms.
Hybrid is mixed of above two. some operation can be web forms and some can be native.
Now let’s talk about how to test the iOS application
again there are two ways to tests
- Device itself
- Emulator – it’s a software on which you can run your application on the computer.
Certainly, there are advantages and disadvantages of the above two:
Advantages of Device :
- exposes real user issues
- memory leaks can be found on the device and not on Emulator ( for the emulator, we need profiling tool to look for memory related issues)
- Network and internet connectivity issues.
Disadvantages of Device:
- need all devices
- need all supported versions
- the time required to test application is more.
Advantages of Emulator:
- Easy to install and use the application
- really fast as uses computer resources
- can do all sort of scenarios
Disadvantages of Emulator:
- cannot detect memory related issues
- cannot detect Network and connectivity related issues.
What are the things needs to be considered while testing iOS application
- During testing make sure that you have tested all scenarios on real devices at least once.
- to fast the execution take help of emulator to execute the test cases which will save the time
- do profiling to find the memory leaks before testing on the real device
- Make sure that all versions and on all devices application should get tested. you can skip the versions on the basis on what new in that version and has really affected my application.
- Do not forget to make sure that Application has followed all “Human Interface Guidelines” provided by Apple.
- Do Testing for application submission to apple.
- depends on application complexity and usage, decide on automation tool.
- Analyze the dumps (crash reports) on computer
While testing iOS application on the device, we need to consider
1) application functionality – functional testing
2) configuration settings – in the settings section
3) the impact of other application/hardware on an application under test – like battery life, other application running with high memory, sleep mode etc.
I hope this will give you a much better idea about testing the iOS application on mobile devices.