Testing iOS mobile application is always an exciting job for QA. it does has lot of challenges as well. before doing iOS mobile application testing , QA needs to understand about 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)
Native application is build on iPhone SDKs. it like any other software development SDK.
Web application where we just create a wrapper to website and create application out of it. in iOS terminology we can called it as Web forms.
Hybrid is mixed of above two. some operation can be web forms and some can be native.
Now lets talk about how to test the iOS application
again there are two ways to tests
- On Device itself
- Emulator – its a software on which you can run your application on computer.
Certainly there are advantages and disadvantages of above two:
Advantages of Device :
- exposes real user issues
- memory leaks can be found on device and not on Emulator ( for 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
- 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:
- can not detect memory related issues
- can not detect Network and connectivity related issues.
What are the things needs to be consider 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 real device
- Make sure that all versions and on all devices application should gets tested. you can skip the versions on the basis on what new in that version and has really affect my application.
- Do not forgot to make sure that Application has follows all “Human Interface Guidelines” provided by Apple.
- Do Testing for application submission to apple.
- depends on application complexity and usage, decide on automation tool.
- Analyse the dumps (crash reports) on computer
While testing iOS application on device, we need need consider
1) application functionality – functional testing
2) configuration settings – in settings section
3) impact of other application/hardware on application under test – like battery life, other application running with high memory, sleep mode etc.
i hope this will give you much better idea about testing the iOS application on mobile devices.