<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: iPhone Testing</title>
	<atom:link href="http://sqasolution.com/blog/index.php/2009/01/08/iphone-testing/feed/" rel="self" type="application/rss+xml" />
	<link>http://sqasolution.com/blog/2009/01/08/iphone-testing/</link>
	<description>On Demand Software Testing Team</description>
	<lastBuildDate>Sun, 21 Mar 2010 05:38:45 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Fuad</title>
		<link>http://sqasolution.com/blog/2009/01/08/iphone-testing/comment-page-1/#comment-717</link>
		<dc:creator>Fuad</dc:creator>
		<pubDate>Thu, 05 Feb 2009 20:12:46 +0000</pubDate>
		<guid isPermaLink="false">http://sqasolution.com/blog/2009/01/08/iphone-testing/#comment-717</guid>
		<description>I would like to share this article with you:


				
					&lt;a href=&quot;http://furbo.org/2008/08/06/beta-testing-on-iphone-20/&quot; title=&quot;Permalink to Beta testing on iPhone 2.0&quot; rel=&quot;nofollow&quot;&gt;Beta testing on iPhone 2.0&lt;/a&gt;
				
				
					&lt;strong&gt;NOTE:&lt;/strong&gt; Itâ€™s not clear if the information in this essay is covered by the NDA or not. The instructions presented here are either referenced on Appleâ€™s own site or referenced in the publicly available version of Xcode. If requested, I will remove this post.
During Steve Jobsâ€™ WWDC Keynote the announcement of Ad Hoc distribution meant one thing to most of us iPhone developers: beta testing. Unfortunately, the instructions for setting up this beta testing environment are not well documented. I used the following steps to setup a beta test for &lt;a href=&quot;http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=284540316&amp;mt=8&quot; rel=&quot;nofollow&quot;&gt;Twitterrific&lt;/a&gt; on the iPhone.

Updating Xcode for beta builds
This is the part of the whole process that eluded me the most. There is a new requirement to add entitlements to your Xcode project. Luckily, someone pointed me to &lt;a href=&quot;http://discussions.apple.com/thread.jspa?threadID=1597879&amp;tstart=0&quot; rel=&quot;nofollow&quot;&gt;this discussion&lt;/a&gt; on Appleâ€™s website. It provides the following steps:

Open up your ad hoc provisioning profile in Text Edit and verify that it contains a â€œ&lt;key&gt;get-task-allow&lt;/key&gt;â€. If it does not, generate a new provisioning profile using the Program Portal.
In Xcode, select File &gt; New Fileâ€¦

In the dialog source list, under iPhone, select â€œCode Signingâ€. Select â€œEntitlementsâ€ then click the Next button.
Name the file â€œdist.plistâ€ and put it in the root of your Xcode project. Click Finish.
Open dist.plist and uncheck the â€œget-task-allowedâ€ checkbox. Save the file.

Now that you have setup the entitlements, youâ€™ll want to create a new configuration for your beta builds. I found it easiest to make a copy of my existing App Store distribution configuration and change the code signing setup:

Make sure that you new beta configuration is the Active Configuration. Xcode has some problems if you try to modify Code Signing parameters on a configuration that is not active.
Use Project &gt; Project Settings to open the build settings. Change the â€œCode Signing Provisioning Profileâ€ to be â€œAny iPhone OS Deviceâ€ and then select the name of the provisioning profile you chose in the Program Portal. If you donâ€™t see the name listed, make sure that the .mobileprovision file is located in ~/Library/MobileDevice/Provisioning Profiles and that the â€œCode Signing Identityâ€ is set to â€œiPhone Distributionâ€.
Use Project &gt; Edit Active Target to open the target settings. Change the â€œCode Signing Entitlementsâ€ to be â€œdist.plistâ€.

Clean the build and you should then be able to build a beta release.

Xcode can get confused when changing provisioning and other code signing settings, so donâ€™t be afraid to quit and restart to get things synced up.
Adding beta testers
Of course the next step is to sign people up for your beta test. The most important thing to get from them is their device ID. Each iPhone or iPod touch has a unique identifier. Youâ€™ll need this to add them to the Ad Hoc distribution.
There are several ways to get this information. iTunes will display the Identifier if you click on the Serial Number after selecting the device in the source list. Pressing Cmd-C (Mac) or Ctrl-C (Windows) will copy the 40 character hex string to the clipboard.
If your beta tester is on a Mac, another solution is to use the &lt;a href=&quot;http://www.apple.com/support/downloads/iphoneconfigurationutility10formacosx.html&quot; rel=&quot;nofollow&quot;&gt;iPhone Configuration Utility&lt;/a&gt;, which can be downloaded from Appleâ€™s site. After selecting the device, youâ€™ll see the same Identifier field which can be copy and pasted as text.
Finally, you can also use Erica Sadunâ€™s &lt;a href=&quot;http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=285691333&amp;mt=8&quot; rel=&quot;nofollow&quot;&gt;Ad Hoc Helper&lt;/a&gt;. Your beta tester can use this application to send you an email with the deviceâ€™s information directly from the device.

Creating a beta build
After collecting device identifiers from your beta testers, youâ€™ll need to go into the Program Portal and add the devices. Iâ€™ve found that the easiest way to manage this is by using the testerâ€™s name as the device name.
Once youâ€™ve finished entering up to 100 device identifiers, youâ€™ll need to add these devices to the your Ad Hoc provisioning profile (Edit &gt; Modify.)
After youâ€™ve finished updating the profile, Download the .mobileprovision file and move it into ~/Library/MobileDevice/Provisioning Profiles.
Now quit and restart Xcode so that it recognizes the new provisioning and perform the following steps:

Select the beta configuration you setup earlier.
Open your project settings with Project &gt; Edit Project Settings.

Update the â€œCode Signing Provisioning Profileâ€ to use the name of the provisioning you just installed in MobileDevice.

Youâ€™ll notice that itâ€™s quite a bit of work to update the provisioning, and since youâ€™re modifying the contents of the project, youâ€™re going to need to checkin .xcodeproj changes to your version control system. My recommendation is to get all your beta testers lined up and do it all at once.
Distributing and installing the beta
At this point, you can do a beta build and it can be run by your beta testers. The only thing left to do is getting them the software.
To be honest, I donâ€™t know how this part works for users that are on Windows. Iâ€™m sure itâ€™s possible, but youâ€™re on your own as far as the steps involved.
&lt;strong&gt;Updated August 9th, 2008:&lt;/strong&gt; Several readers have informed me that you can drag both the provisioning profile and the .app folder to the Applications section in iTunes on WIndows. Once there, they will get moved over to the device with the next sync.
For beta testers on the Mac, youâ€™ll need to send them two pieces of data: a ZIP file that contains the .app bundle created by Xcode and a copy of the Ad Hoc .mobileprovision file in the MobileDevice folder.

To install the .mobileprovision file, the beta tester can just drag it onto the iTunes icon in the Dock. After unzipping the .app bundle, your tester can drag the application into Application in the iTunes Library. The next time they sync, the beta version of your application should appear on the device.
If your testers are managing a lot of different applications, they may find that the iPhone Configuration Utility is easier to use than iTunes. It has facilities to manage multiple devices, provisioning profiles and applications.
Hopefully youâ€™ll find this information useful and allows you to increase the overall quality and reliability of your iPhone application. Happy testing!
				
				
					Posted on August 6th, 2008 in &lt;a href=&quot;http://furbo.org/category/development/&quot; title=&quot;View all posts in Development&quot; rel=&quot;nofollow&quot;&gt;Development&lt;/a&gt; 
				

			</description>
		<content:encoded><![CDATA[<p>I would like to share this article with you:</p>
<p>					<a href="http://furbo.org/2008/08/06/beta-testing-on-iphone-20/" title="Permalink to Beta testing on iPhone 2.0" rel="nofollow">Beta testing on iPhone 2.0</a></p>
<p>					<strong>NOTE:</strong> Itâ€™s not clear if the information in this essay is covered by the NDA or not. The instructions presented here are either referenced on Appleâ€™s own site or referenced in the publicly available version of Xcode. If requested, I will remove this post.<br />
During Steve Jobsâ€™ WWDC Keynote the announcement of Ad Hoc distribution meant one thing to most of us iPhone developers: beta testing. Unfortunately, the instructions for setting up this beta testing environment are not well documented. I used the following steps to setup a beta test for <a href="http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=284540316&amp;mt=8" rel="nofollow">Twitterrific</a> on the iPhone.</p>
<p>Updating Xcode for beta builds<br />
This is the part of the whole process that eluded me the most. There is a new requirement to add entitlements to your Xcode project. Luckily, someone pointed me to <a href="http://discussions.apple.com/thread.jspa?threadID=1597879&amp;tstart=0" rel="nofollow">this discussion</a> on Appleâ€™s website. It provides the following steps:</p>
<p>Open up your ad hoc provisioning profile in Text Edit and verify that it contains a â€œ&lt;key&gt;get-task-allow&lt;/key&gt;â€. If it does not, generate a new provisioning profile using the Program Portal.<br />
In Xcode, select File &gt; New Fileâ€¦</p>
<p>In the dialog source list, under iPhone, select â€œCode Signingâ€. Select â€œEntitlementsâ€ then click the Next button.<br />
Name the file â€œdist.plistâ€ and put it in the root of your Xcode project. Click Finish.<br />
Open dist.plist and uncheck the â€œget-task-allowedâ€ checkbox. Save the file.</p>
<p>Now that you have setup the entitlements, youâ€™ll want to create a new configuration for your beta builds. I found it easiest to make a copy of my existing App Store distribution configuration and change the code signing setup:</p>
<p>Make sure that you new beta configuration is the Active Configuration. Xcode has some problems if you try to modify Code Signing parameters on a configuration that is not active.<br />
Use Project &gt; Project Settings to open the build settings. Change the â€œCode Signing Provisioning Profileâ€ to be â€œAny iPhone OS Deviceâ€ and then select the name of the provisioning profile you chose in the Program Portal. If you donâ€™t see the name listed, make sure that the .mobileprovision file is located in ~/Library/MobileDevice/Provisioning Profiles and that the â€œCode Signing Identityâ€ is set to â€œiPhone Distributionâ€.<br />
Use Project &gt; Edit Active Target to open the target settings. Change the â€œCode Signing Entitlementsâ€ to be â€œdist.plistâ€.</p>
<p>Clean the build and you should then be able to build a beta release.</p>
<p>Xcode can get confused when changing provisioning and other code signing settings, so donâ€™t be afraid to quit and restart to get things synced up.<br />
Adding beta testers<br />
Of course the next step is to sign people up for your beta test. The most important thing to get from them is their device ID. Each iPhone or iPod touch has a unique identifier. Youâ€™ll need this to add them to the Ad Hoc distribution.<br />
There are several ways to get this information. iTunes will display the Identifier if you click on the Serial Number after selecting the device in the source list. Pressing Cmd-C (Mac) or Ctrl-C (Windows) will copy the 40 character hex string to the clipboard.<br />
If your beta tester is on a Mac, another solution is to use the <a href="http://www.apple.com/support/downloads/iphoneconfigurationutility10formacosx.html" rel="nofollow">iPhone Configuration Utility</a>, which can be downloaded from Appleâ€™s site. After selecting the device, youâ€™ll see the same Identifier field which can be copy and pasted as text.<br />
Finally, you can also use Erica Sadunâ€™s <a href="http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=285691333&amp;mt=8" rel="nofollow">Ad Hoc Helper</a>. Your beta tester can use this application to send you an email with the deviceâ€™s information directly from the device.</p>
<p>Creating a beta build<br />
After collecting device identifiers from your beta testers, youâ€™ll need to go into the Program Portal and add the devices. Iâ€™ve found that the easiest way to manage this is by using the testerâ€™s name as the device name.<br />
Once youâ€™ve finished entering up to 100 device identifiers, youâ€™ll need to add these devices to the your Ad Hoc provisioning profile (Edit &gt; Modify.)<br />
After youâ€™ve finished updating the profile, Download the .mobileprovision file and move it into ~/Library/MobileDevice/Provisioning Profiles.<br />
Now quit and restart Xcode so that it recognizes the new provisioning and perform the following steps:</p>
<p>Select the beta configuration you setup earlier.<br />
Open your project settings with Project &gt; Edit Project Settings.</p>
<p>Update the â€œCode Signing Provisioning Profileâ€ to use the name of the provisioning you just installed in MobileDevice.</p>
<p>Youâ€™ll notice that itâ€™s quite a bit of work to update the provisioning, and since youâ€™re modifying the contents of the project, youâ€™re going to need to checkin .xcodeproj changes to your version control system. My recommendation is to get all your beta testers lined up and do it all at once.<br />
Distributing and installing the beta<br />
At this point, you can do a beta build and it can be run by your beta testers. The only thing left to do is getting them the software.<br />
To be honest, I donâ€™t know how this part works for users that are on Windows. Iâ€™m sure itâ€™s possible, but youâ€™re on your own as far as the steps involved.<br />
<strong>Updated August 9th, 2008:</strong> Several readers have informed me that you can drag both the provisioning profile and the .app folder to the Applications section in iTunes on WIndows. Once there, they will get moved over to the device with the next sync.<br />
For beta testers on the Mac, youâ€™ll need to send them two pieces of data: a ZIP file that contains the .app bundle created by Xcode and a copy of the Ad Hoc .mobileprovision file in the MobileDevice folder.</p>
<p>To install the .mobileprovision file, the beta tester can just drag it onto the iTunes icon in the Dock. After unzipping the .app bundle, your tester can drag the application into Application in the iTunes Library. The next time they sync, the beta version of your application should appear on the device.<br />
If your testers are managing a lot of different applications, they may find that the iPhone Configuration Utility is easier to use than iTunes. It has facilities to manage multiple devices, provisioning profiles and applications.<br />
Hopefully youâ€™ll find this information useful and allows you to increase the overall quality and reliability of your iPhone application. Happy testing!</p>
<p>					Posted on August 6th, 2008 in <a href="http://furbo.org/category/development/" title="View all posts in Development" rel="nofollow">Development</a></p>
]]></content:encoded>
	</item>
</channel>
</rss>
