大咖直播-鸿蒙原生开发与智能提效实战!>>> 了解详情
写点什么

在 iOS8 上使用 TestFlight 进行 Beta 测试

  • 2014-06-29
  • 本文字数:1412 字

    阅读完需:约 5 分钟

在 2014 年的苹果全球开发者大会上,苹果宣布他们把TestFlight 集成进了iOS 8 的开发套件中。这样做的目标是,让开发人员多了一种安装Beta 测试程序的方法,并使整个过程更加容易,iOS 应用在发布以前很难去测试它,这一问题被开发人员诟病已久,这次苹果总算是兑现了承诺,解决了这个问题的。

苹果二月份收购了TestFlight 的母公司Burstly ,几个月之后宣布了以上消息。本次收购最初的一些影响是,TestFlight 终止了对Android 的支持,并中止了对TestFlight iOS SDK 的支持,允许收集用户的使用行为分析数据。目前, TestFlight 已经和一些新特性集成进了 iTunes Connect。

简单地说,全新的 TestFlight Beta 测试会给我们带来:

  • 更容易募集 beta**** 测试人员在 App Store 之外安装应用时要遵循这样的基本机制,那就是需要将每台设备标识符(UDID)添加到要安装应用的开发人员账号上,然后生成一个包含所有信息的配置文件。

    在新版的 TestFlight 中,我们不再需要 UDID 了,只需要把他们的 Apple ID 用邮件发给测试人员,那么这些测试人员就可以加为 beta 程序的新的测试人员了。这些测试人员可以在任何他们自己的设备上安装这款应用。

  • 更庞大的测试人群长期以来 iOS 开发人员一直在诟病这样一个问题:每个开发人员账号可以添加的 UDID 越来越少,限制了可以参与测试的用户的数量。从现在开始,开发人员可以为他们的应用添加多达 1000 名的测试人员了。

    除此以外,开发人员还可以拥有最多 25 位内部测试人员,这些测试人员必须要有 iTunes Connect 账号,他们会得到访问这款应用最新版本的授权。

  • 符号化的崩溃报告很久以前苹果就为 iTunes Connect 上的开发人员提供了这项崩溃报告的功能。但是由于某些因素,这个功能始终都无法让开发人员完全满意。引入 TestFlight 后将要改善这种情况,开发人员将能查看他们累积的崩溃日志,但这个功能要到明年晚些时候才能使用。此外,崩溃日志显示时会自动地符号化。

使用这些新功能有几点注意事项。

第一点并且最重要的一点是,一个应用在开放给 beta 测试人员前,必须先通过一个审核流程。这对于一些开发人员来说是个问题: Ole Begemann 提到,长达几天的审核时间无益于创建“一个高效的 beta 版本发布流程”。苹果好像也意识到了这对开发人员来说是个潜在的问题,他们已经考虑了一项更宽松的政策,允许“无需苹果审核就可以给beta 测试人员发布更新版本,除非这个更新版本包含重大修改”。如果更新版本包含了重大修改,开发人员必须“通过iTunes Connect 通知苹果,申请重新审核他们的应用”。

还有一点要引起注意,那就是测试人员只能拿到应用最新的版本。 Nick Arnott 为 iMore 网站写了篇文章,他注意到在苹果的演示视频中,除了最新的版本,其他版本都标记为“未激活”状态了。目前尚不清楚 Beta 测试人员是否能拿到老版本,很多人恐怕都难以接受这个问题,因为 beta 测试人员如果遇到了致命的问题,他们可能会需要回退到老版本

最后一点是,我们必须注意现在发布的TestFlight 只支持iOS 8 了,所以开发人员如果还是想支持老版本的iOS 或Android,那么就不能用TestFlight 了。他们有两个其他的选择, HockeyApp Crashlytics

查看英文原文: Beta Testing on iOS 8 with TestFlight 问题


感谢夏雪对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2014-06-29 20:063500
用户头像

发布了 77 篇内容, 共 40.2 次阅读, 收获喜欢 26 次。

关注

评论

发布
暂无评论
发现更多内容

【Redis权威指南】「特性分析」Sentinel的特性分析典籍指南(1)

码界西柚

redis哨兵模式 redis哨兵 redis sentinel Redis 核心技术与实战 12月日更

关于研发效能推进提升的一点感受

homber

DevOps 研发效能 签约计划第二季

左耳听风,右手敲码

homber

成长 感悟 竞争力 签约计划第二季

如何通过Kubernetes事件来报告错误

Robert Lu

#Kubernetes#

架构实战营毕业总结

Geek_d18264

架构实战营

http协议

en

HTTP

搭建基本Jest测试框架,解读覆盖率实现原理

梁龙先森

签约计划第二季

JavaScript 数据结构之 Number

devpoint

ES6 math 内容合集 签约计划第二季

音视频实战(2)- 如何在网页端给视频添加硬水印

liuzhen007

签约计划第二季

斯诺克

Tiger

28天写作

idea-如何解决代码合并冲突?

Java个体户

IDEA

Camtasia添加光标效果教程

淋雨

Camtasia

netty系列之:手持framecodec神器,创建多路复用http2客户端

程序那些事

Netty HTTP 程序那些事 http2 12月日更

音视频实战(3)- Mac 系统 MediaInfo 多实例媒体信息分析

liuzhen007

签约计划第二季

什么是QA

homber

QA 测试开发 职场新人 签约计划第二季

JavaScript 数据结构之 Set

devpoint

set ES6 内容合集 签约计划第二季

从一个乙方视角聊聊敏捷项目

Bruce Talk

Scrum 敏捷 随笔 Agile

架构实战营,第一周作业

Jude

架构实战营

从0到1普及前端知识 | 内容合集

你好bk

内容合集 签约计划第二季

勿拖延

Nydia

Go并不需要Java风格的GC

Robert Lu

Go 垃圾回收

4.《重学 JAVA》—基础语法

杨鹏Geek

Java 25 周年 28天写作 12月日更

架构实战营模块九作业

Geek_d18264

架构实战营

音视频理论(2)- 音视频传输协议之 RTMP

liuzhen007

签约计划第二季

第1周作业提交

cqyanbo

Prometheus Exporter (十七)JMX Exporter

耳东@Erdong

JMX Prometheus 28天写作 exporter 12月日更

华为中国大学生ICT大赛2021实践赛网络赛道晋级赛试题解析(答案版)

小韩

华为 网络 ICT

JavaScript 数据结构之 Map

devpoint

set map ES6 内容合集 签约计划第二季

Go error 的四种处理方式

Rayjun

Go Error

实用机器学习笔记四:数据标注

打工人!

机器学习 学习笔记 12月日更 实用机器学习

JavaScript 数据结构之 Object

devpoint

ES6 Object 内容合集 签约计划第二季

在iOS8上使用TestFlight进行Beta测试_Android/iOS_Sergio De Simone_InfoQ精选文章