Introduction to iOS Application Testing
For this introduction to iOS app testing I will be covering the following topics:
1. Installing an iOS app
2. Taking a snapshot or a video
3. Accessing crash error and console logs on your device
Here are some tips on getting started, including how to collect required information for your bug reports.
First, depending on how many files are provided - provisional and executable - download and drag them into your iTunes library. Always begin with provisional, and then proceed to the executable files. In some cases the application may not load if the order is reversed.
Next, plug in your iDevice and click on it in iTunes.
Then, click on the Apps option at the top of the screen (next to Summary & Info) and select the name of the application on the list of apps you wish to sync to your device.
Finally, click ‘Apply’ on the bottom right corner and once the sync is complete, verify that the app is installed your device.
For further clarification, this video may be helpful: http://www.youtube.com/watch?v=7vzm0iffX3U
Apps can also be installed by using the iPhone Configuration Utility. Here are download links:
On some uTest projects the customer may provide a secure link for Over-The-Air (OTA) downloading.
Tip: Before you accept a test cycle invitation, make sure that you are provisioned to test the app. The easiest way to find out is to try and install the attached .ipa file to your iDevice. If an error message occurs stating that the app can’t be installed, contact your project manager to see if it can be resolved.
Snapshots and Videos
Taking snapshots for bug reports is easy with iOS devices. On the screen that you want to capture, hold down the home button and press the power button at the top right. Then it is just a matter of syncing your device with either iTunes or a photo management program of the user's choice. I use MS Paint to grab and save it on my PC. You may also email the files to yourself or upload to Dropbox and access it from your computer.
There are very few apps that can be used for video capturing unless your iDevice is ‘jailbroken.’ However, most customers prefer that you don’t test on ‘jailbroken’ devices. If you would like to upload a video you can use another phone’s camera or a digital camera and then modify and compress the video file as necessary.
Acquiring Crash Reports
In addition to test steps, most customers will require you to attach an error crash log to your bug report. This report is stored on your iDevice. Crash reports describe the conditions under which the application terminated, in most cases including a complete stack trace for each executing thread, and are typically very useful for debugging issues in the application.
Syncing your iDevice with iTunes will copy crash reports to a directory on your PC or Mac.
Depending on the platform, the directory is:
- Mac OS X: ~/Library/Logs/CrashReporter/MobileDevice/
- Windows XP: C:\Documents and Settings\
\Application Data\Apple Computer\Logs\CrashReporter\MobileDevice\
- Windows Vista or 7: C:\Users\
\AppData\Roaming\Apple Computer\Logs\CrashReporter\MobileDevice\ is the user's login name for the computer. is the name of the iDevice, for example, "John's iPhone."
You are only interested in .crash files. The crash report's file name begins with the application name and contains date/time information.
Crash Report Tools
This link will take you to an article on “Understanding and Analyzing iOS Application Crash Report” in Apple’s iOS developer library: https://developer.apple.com/library/ios/#technotes/tn2151/_index.html
Tip: In case multiple crashes occur that seem to be related, please compress them all and attach to your bug report.
Some customers may request that you submit console logs together with your crash reports. The console log is an iOS feature that includes information from every application on the device. The console log does not last very long so try to collect it minutes after the crash occurs. Otherwise the details about an issue may be lost.
- Plug your iOS device into your computer shortly after an issue occurs
- Launch the iPhone Configuration Utility
- Select your device in the left-hand bar when it appears
- Select the Console tab
- Click the “Save Console As…” button to get the console contents in a file on your hard drive
- Include “console” in the name of the file
- Check the ending time in the log’s text. If the log doesn’t include info up until the problem occurred, re-run your test and collect the latest console output again.
- Attach all the logs to your bug report
NOTE: Please remember that the console log will include information from other applications. In case you are testing more than one app for uTest clients, please remember to honor the NDA and uninstall those apps before you start testing.
Join the conversation about this topic in our forums here: http://forums.utest.com/viewtopic.php?f=55&t=3165