Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do I test my iOS Apps

Tags:

ios

testing

My question maybe silly, but can anyone coach me?

Except doing some test(most likely white box testing) while coding, after the App was built, do we have some testing tools or special method for doing the test?

All I can imaging for now, is only manual testing the functionality of my App.

Thanks everyone.

like image 515
Daniel Chen Avatar asked Sep 27 '10 05:09

Daniel Chen


People also ask

Can I test iOS apps on iPad?

You can test iPhone apps on the iPad, but there are some differences. For example, the iPhone has two speakers rather than one so you must specifically reroute the audio to the speaker. Also, you can't replicate application interruptions (such as a phone call or sms text) as easily.

Can I test iOS app without developer account?

If you don't join the Apple Developer Program, you can still build and run your app on your devices using free provisioning. However, the capabilities available to your app, described in Adding Capabilities, are restricted when you don't belong to the Apple Developer Program.

How do I beta test my iOS app?

If you'd like to run beta software on your iPhone, then you need to head to the Apple Beta Software Program page on the web. Follow the Sign up link, enter your Apple ID credentials, and then open the iOS tab—you'll see the current beta version of iOS that's being tested at the moment.


1 Answers

Update: Added section 'Automated testing for iOS4'

As a professional tester my suggestion is that you should have a healthy mix of automated and manual testing. The Examples below are in .net but it should be easy to find a tool for whatever technique you are using.

AUTOMATED TESTING

  • Unit Testing
    Use NUnit to test your classes, functions and interaction between them.
    http://www.nunit.org/index.php

  • Automated Functional Testing
    If it's possible you should automate a lot of the functional testing. Some frame works have functional testing built into them. Otherwise you have to use a tool for it. If you are developing web sites/applications you might want to look at Selenium.
    http://www.peterkrantz.com/2005/selenium-for-aspnet/

  • Continuous Integration
    Use CI to make sure all your automated tests run every time someone in your team makes a commit to the project.
    http://martinfowler.com/articles/continuousIntegration.html

  • Automated testing for iOS4
    Automate the testing of your application by scripting touch events using the new UIAutomation Instrument.
    Some links:

    • http://answers.oreilly.com/topic/1646-how-to-use-uiautomation-to-create-iphone-ui-tests/
    • http://cocoawithlove.com/2008/11/automated-user-interface-testing-on.html
    • http://alexvollmer.com/posts/2010/07/03/working-with-uiautomation/

MANUAL TESTING
As much as I love automated testing it is, IMHO, not a substitute for manual testing. The main reason being that an automated can only do what it is told and only verify what it has been informed to view as pass/fail. A human can use it's intelligence to find faults and raise questions that appear while testing something else.

  • Exploratory Testing
    ET is a very low cost and effective way to find defects in a project. It take advantage of the intelligence of a human being and a teaches the testers/developers more about the project than any other testing technique i know of. Doing an ET session aimed at every feature deployed in the test environment is not only an effective way to find problems fast, but also a good way to learn and fun!
    http://www.satisfice.com/articles/et-article.pdf
like image 127
Jonas Söderström Avatar answered Sep 27 '22 20:09

Jonas Söderström