What are the best practices for testing iPhone apps?
-
What are the recommended best practices that are followed when developing iPhone apps? Do developers do full stack unit testing (including Views and View Controllers)? Do you do beta programs using the Enterprise program? Do you use TestFlight like services to provide a limited beta program? Do you use feature flags (ala Facebook) in order to limit functionality to some users to allow a gradual rollout? How do you handle the slow turnaround time between fixing a bug and rolling out an update (e.g. 2 weeks for the AppStore ish). Note, I'm mainly looking for responses from people who have experience with apps with significant levels of deployment, but any input would be useful.
-
Answer:
These are general guidelines and best practices you should follow when developing iOS apps 1. Testing on simulators is not the same as testing on actual devices - test your apps on actual devices under real-life conditions (like loss of internet connection, no gps signal in case your app uses them) 2. Test your apps using Instruments and Analyze the code. Make sure it does object allocations judiciously and your code doesn't have leaks 3. Use a program like Testflight to invite beta testers for testing your app 4. Test the app (or get it tested) on all OS versions and device types your app supports To answer your questions 1. Enterprise program for testing apps - most indie developers do not go this route for testing their apps. A 100 users to do beta testing is usually good enough to get your app out unless you have a huge user base and would like to test load balancing. In that case the enterprise account does make sense to purchase 2. Feature flags - IMO this is not a very good idea. Users like to know what they are getting in their apps. Unlocking features gradually might actually confuse them. It would be better to release updates where users are aware of what they are getting 3. Handling the slow turnaround time - this is a problem with Apple which you need to account for when releasing apps/app updates. The best way would be to start working on an update (additional features, enhancements) when you submit the first version, fix the bugs which get reported from the first version and submit an update asap - short release cycles
Lata Sadhwani at Quora Visit the source
Other answers
There are many best practices for testing iPhone apps. The development of apps and its testing stages is far more complex, since extracting the necessary data from low level objects is impossible for users. This is crucial for test automation.Thus we can use practices such as Rooting and compile time source instrumentation. But nothing can match a cloud-based hybrid approach which can offer developers and software testers the necessary coverage, capabilities and flexibility to deliver better iOS apps.http://testbytes.net/blog/best-practices-to-follow-for-ios-mobile-app-testing/
James John
Related Q & A:
- What are some best practices to follow when designing for users completely unfamiliar with computers?Best solution by User Experience
- What are the best iTunes apps?Best solution by Ask.com old
- What are the best apps for the iPod touch?Best solution by Yahoo! Answers
- What are some good iPod/iPhone apps?Best solution by wiki.answers.com
- What are THE BEST iPhone Apps?Best solution by wiki.answers.com
Just Added Q & A:
- How many active mobile subscribers are there in China?Best solution by Quora
- How to find the right vacation?Best solution by bookit.com
- How To Make Your Own Primer?Best solution by thekrazycouponlady.com
- How do you get the domain & range?Best solution by ChaCha
- How do you open pop up blockers?Best solution by Yahoo! Answers
For every problem there is a solution! Proved by Solucija.
-
Got an issue and looking for advice?
-
Ask Solucija to search every corner of the Web for help.
-
Get workable solutions and helpful tips in a moment.
Just ask Solucija about an issue you face and immediately get a list of ready solutions, answers and tips from other Internet users. We always provide the most suitable and complete answer to your question at the top, along with a few good alternatives below.