如何测试 iPhone 应用程序?
如何测试 iPhone 应用程序? 我可以在自己的设备上获取它,任何给我设备的人,我都可以在他们的设备上运行它,但是有没有办法通过应用程序商店进行有限发布以进行 Beta 测试?
相关:另请参阅此问题,了解如何在不使用 App Store 的情况下将应用程序移植到手机上。
How can you beta test an iPhone app? I can get it on my own device, and anyone that gives me a device, I can run it on theirs, but is there a way to do a limited release via the app store for beta testing?
Related: Also, see this question on getting your app onto phones without using the App Store.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(9)
(因为该线程中仍然缺少官方指南..)
TestFlight ,已被 Apple 收购,现在 (iOS8+) 可用于 Beta 测试,可以轻松地将您的应用程序交给 Beta 测试人员,而无需事先收集设备 UUID(您只需要测试人员的电子邮件地址)。 解释所有必要步骤的详细指南可以在 iTunes Connect 开发者指南。
(As the official guide is still missing in this thread..)
TestFlight, acquired by Apple and now (iOS8+) available for beta testing makes it easy to hand your app to beta testers without the need to collect device UUIDs beforehand (you only need email addresses of your testers). An extensive guide explaining all necessary steps may be found in the iTunes Connect Developer Guide.
使用 iOS 8、Xcode 6、iTunes Connect 和 TestFlight,您不再需要 UDID 和 Ad Hocs。 您只需要 Beta 测试人员提供的 Apple ID 即可。 目前,您只能使用 25 名内部测试人员对您的应用程序进行 Beta 测试,但很快将有 1000 名外部测试人员可供使用。 这篇博文向您展示了如何设置与内部测试人员进行 Beta 测试。
With iOS 8, Xcode 6, iTunes Connect and TestFlight you don't need UDIDs and Ad Hocs anymore. You will just need an Apple ID from your beta tester. Right now you can only beta test your app with 25 internal testers, but soon 1000 external testers will be available too. This blog post shows you how to setup a beta test with internal testers.
使用 testflight :
1) 通过开发证书创建 ipa 文件
2) 在 testflight 上上传 ipa 文件
3) 现在,要识别要测试的设备,请在 Apple 帐户上添加设备 ID 并刷新您的开发证书。 下载更新后的证书并将其上传到 testflight 网站。 检查您获得的设备 ID。
4) 现在将 ipa 文件通过电子邮件发送给测试人员。
5) 下载 ipa 文件时,如果测试人员没有收到任何警告,则意味着设备令牌 + 配置文件已通过验证。 因此,测试人员现在可以在设备上下载 ipa 文件并进行测试工作...
Using testflight :
1) create the ipa file by development certificate
2) upload the ipa file on testflight
3) Now, to identify the device to be tested on , add the device id on apple account and refresh your development certificate. Download the updated certificate and upload it on testflight website. Check the device id you are getting.
4) Now email the ipa file to the testers.
5) While downloading the ipa file, if the testers are not getting any warnings, this means the device token + provisioning profile has been verified. So, the testers can now download the ipa file on device and do the testing job...
有一个相对较新的服务,名为 HockeyApp,它似乎可以与 TestFlight 竞争,但他们声称可以让您访问无限的用户,但是与 TestFlight 不同,它确实需要花费一些美元,而 TestFlight 现在已直接集成到 iTunes Connect 中。
There's a relatively new service called HockeyApp, which seems to rival TestFlight, however they claim to give you access to unlimited users, but it does cost some $$ unlike TestFlight which has now been integrated directly into iTunes Connect.
Diawi 替代方案
由于 diawi.com 对免费帐户添加了一些限制。
下一个最佳可用且易于使用的替代方案是
Microsoft
https://appcenter.ms
Google
https://firebase.google.com/ docs/app-distribution/ios/distribute-console
其他
https://hockeyapp. net/
http://buildtry.com
快乐的构建共享!
Diawi Alternatives
Since diawi.com have added some limitations for free accounds.
Next best available and easy to use alternative is
Microsoft
https://appcenter.ms
Google
https://firebase.google.com/docs/app-distribution/ios/distribute-console
Others
https://hockeyapp.net/
http://buildtry.com
Happy build sharing!
创建临时分发配置文件
Apple 提供的说明提供在这里,但以下是我如何创建可与多个应用程序一起使用的通用配置文件,并添加 Beta 测试程序。
我的设置:
在开始之前,请确保..
步骤 A:将设备添加到配置门户
向每个 Beta 测试人员发送一封电子邮件,其中包含以下消息:
<块引用>
为了将我的应用程序安装到您的 iPhone 上,我需要一些有关您手机的信息。 你猜怎么着,有一个应用程序可以做到这一点!
单击下面的链接并安装并运行该应用程序。
http://itunes.apple.com/app/ ad-hoc-helper/id285691333?mt=8
此应用程序将创建一封电子邮件。 请发给我。
收集测试人员的所有 UDID。
转至配置门户。
转至设备部分。
点击添加设备按钮,添加之前收集的设备。
步骤 B:创建新的配置文件
启动 Mac OS 实用程序Keychain Access。
在其主菜单中,选择钥匙串访问/证书助手/向证书颁发机构请求证书...
弹出的对话框应已包含您的电子邮件并为其命名。
弹出的对话框
选择单选按钮保存到磁盘并继续。
将文件保存到磁盘。
返回配置门户。
转至证书部分。
转到分发选项卡。
单击请求证书按钮。
上传您使用钥匙串访问创建的文件:CertificateSigningRequest.certSigningRequest。
单击批准按钮。
刷新您的浏览器,直到状态显示为已发布。
单击下载按钮并保存文件distribution_identify.cer。
双击文件将其添加到钥匙串。
通过选择其私钥和文件/导出项目...来备份证书。
再次返回配置门户。
转到配置部分。
转到分发选项卡。
点击新建个人资料按钮。
选择单选按钮临时。
输入配置文件名称,我将我的命名为 Evertsson Common Ad Hoc。
选择应用程序 ID。 我有一个用于多个应用程序的通用应用程序 ID:Evertsson Common。
选择设备,在我的例子中是我自己的和我的测试人员的。
提交。
刷新浏览器,直到状态字段显示为活动。
单击下载按钮并将文件保存到磁盘。
双击该文件将其添加到 Xcode。
步骤 C:构建用于分发的应用程序
在 Xcode 中打开您的项目。
打开项目信息窗格:在组和列表中 文件选择最上面的项目,然后按Cmd+I。
转到配置选项卡。
选择配置发布。
单击按钮复制并将其命名为Distribution。
关闭“项目信息”窗格。
打开“目标信息”窗格:在“组和”中 文件展开目标,选择您的目标并按Cmd+I。
转到构建选项卡。
选择名为分发的配置。
找到代码签名部分。
将代码签名身份/任何 iPhone 操作系统设备的值设置为iPhone 分发。
关闭“目标信息”窗格。
在主窗口中,选择活动配置到分发。
从文件模板代码签名/权利创建新文件。
将其命名为Entitlements.plist。
在此文件中,取消选中get-task-allow复选框。
调出目标信息窗格,然后再次找到代码签名部分。
在代码签名权利之后输入文件名Entitlements.plist。
保存、清理并构建项目。
在组和组中 文件找到文件夹MyApp / Products并将其展开。
右键单击该应用并选择在 Finder 中显示。
压缩 .app 文件和 .mobileprovision 文件并将存档发送给您的测试人员。
<块引用>
这是我的应用程序。 要将其安装到您的手机上:
解压存档文件。
打开 iTunes。
将这两个文件拖到 iTunes 中并将它们放在“资料库”组中。
同步您的手机以安装应用程序。
完毕! 唷。 这对我有用。 到目前为止我只添加了一名测试人员。
Creating ad-hoc distribution profiles
The instructions that Apple provides are here, but here is how I created a general provisioning profile that will work with multiple apps, and added a beta tester.
My setup:
Before you get started, make sure that..
Step A: Add devices to the Provisioning Portal
Send an email to each beta tester with the following message:
Collect all the UDIDs from your testers.
Go to the Provisioning Portal.
Go to the section Devices.
Click on the button Add Devices and add the devices previously collected.
Step B: Create a new provisioning profile
Start the Mac OS utility program Keychain Access.
In its main menu, select Keychain Access / Certificate Assistant / Request a Certificate From a Certificate Authority...
The dialog that pops up should aready have your email and name it it.
Select the radio button Saved to disk and Continue.
Save the file to disk.
Go back to the Provisioning Portal.
Go to the section Certificates.
Go to the tab Distribution.
Click the button Request Certificate.
Upload the file you created with Keychain Access: CertificateSigningRequest.certSigningRequest.
Click the button Aprove.
Refresh your browser until the status reads Issued.
Click the Download button and save the file distribution_identify.cer.
Doubleclick the file to add it to the Keychain.
Backup the certificate by selecting its private key and the File / Export Items....
Go back to the Provisioning Portal again.
Go to the section Provisioning.
Go to the tab Distribution.
Click the button New Profile.
Select the radio button Ad hoc.
Enter a profile name, I named mine Evertsson Common Ad Hoc.
Select the app id. I have a common app id to use for multiple apps: Evertsson Common.
Select the devices, in my case my own and my tester's.
Submit.
Refresh the browser until the status field reads Active.
Click the button Download and save the file to disk.
Doubleclick the file to add it to Xcode.
Step C: Build the app for distribution
Open your project in Xcode.
Open the Project Info pane: In Groups & Files select the topmost item and press Cmd+I.
Go to the tab Configuration.
Select the configuration Release.
Click the button Duplicate and name it Distribution.
Close the Project Info pane.
Open the Target Info pane: In Groups & Files expand Targets, select your target and press Cmd+I.
Go to the tab Build.
Select the Configuration named Distribution.
Find the section Code Signing.
Set the value of Code Signing Identity / Any iPhone OS Device to iPhone Distribution.
Close the Target Info pane.
In the main window select the Active Configuration to Distribution.
Create a new file from the file template Code Signing / Entitlements.
Name it Entitlements.plist.
In this file, uncheck the checkbox get-task-allow.
Bring up the Target Info pane, and find the section Code Signing again.
After Code Signing Entitlements enter the file name Entitlements.plist.
Save, clean, and build the project.
In Groups & Files find the folder MyApp / Products and expand it.
Right click the app and select Reveal in Finder.
Zip the .app file and the .mobileprovision file and send the archive to your tester.
Done! Phew. This worked for me. So far I've only added one tester.
2011年,出现了一项名为“Test Flight”的新服务,它直接解决了这个问题。
苹果公司于 2014 年收购了 TestFlight,并将其集成到 iTunes Connect 和 App Store Connect 中。
In year 2011, there's a new service out called "Test Flight", and it addresses this issue directly.
Apple has since bought TestFlight in 2014 and has integrated it into iTunes Connect and App Store Connect.
请注意,由专业 QA 工程师完成的传统“beta 测试”与“公开 beta 测试”之间存在区别,“公开 beta 测试”是在产品准备就绪之前向公众发布产品:)
您可以进行“beta 测试”——加载到您的测试人员将使用的特定 iPhone/iPod。 你不能进行“公开测试”——向公众预发布。
Note that there is a distinction between traditional "beta testing" which is done by professional QA engineers, and "public beta testing" which is releasing your product to the public before it's ready : )
You can do "beta testing" -- loading to specific iPhones/iPods your testers will be using. You can't do "public beta testing" -- pre-releasing to the public.
2014 年,随着 iOS 8 和 XCode 6,苹果推出了 使用 iTunes Connect 对 iOS 应用进行 Beta 测试。
您可以将构建上传到 iTunes connect 并使用测试人员的邮件 ID 邀请他们。 您可以仅使用外部测试人员的电子邮件地址来邀请最多 2000 名外部测试人员。 他们可以通过 TestFlight 安装测试版应用
In 2014 along with iOS 8 and XCode 6 apple introduced Beta Testing of iOS App using iTunes Connect.
You can upload your build to iTunes connect and invite testers using their mail id's. You can invite up to 2000 external testers using just their email address. And they can install the beta app through TestFlight