写点什么

在 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:063188
用户头像

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

关注

评论

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

甲方日常 8

句子

工作 随笔杂谈 日常

LeetCode题解:239. 滑动窗口最大值,单调队列,JavaScript,详细注释

Lee Chen

大前端 LeetCode

如何将VSCode变成绿色版本

lmymirror

vscode 教程

给大家介绍下,这是我的流程图软件 —— draw.io

程序员小航

工具 流程图 draw.io drawio-desktop 画图软件

翻转链表,机器学习视觉训练,对数据的人工标注,使信息丢失,John 易筋 ARTS 打卡 Week 16

John(易筋)

大数据 学习 ARTS 打卡计划 翻转链表 Google论文评判人工预处理

程序的机器级表示-数组的分配和访问

引花眠

计算机基础

2020-09-03-第十三周学习总结

路易斯李李李

商业通识 : 商业为什么能进步?

Walker

学习 得到 个人成长 商业

一点思考|工作十几年了,竟从未用过do-while!

王磊

Java

Spring 5 中文解析测试篇-Spring测试

青年IT男

Spring5 JUnit

透彻理解AQS源码分析系列之AQS基础二

InfoQ_d2212957090d

拥抱K8S系列-05-基于docker部署面临的问题

张无忌

Docker 运维

ARTS打卡 第15周

引花眠

微服务 ARTS 打卡计划

有奖征文重磅来袭,来!一起玩把大的!

有只小耳朵

[翻译] Go Concurrency Patterns: Pipelines and cancellation[Go并发模式]

卓丁

channel pipeline

Go: gops如何与Go运行时交互?

陈思敏捷

gops Go 语言

读后感之《任正非:以客户为中心》

王新涵

学习 Java,有什么书籍推荐?学习的方法和过程是怎样的?

沉默王二

Java 学习 程序员 书单

不支持原子性的 Redis 事务也叫事务吗?

大头星

Java redis 事务

ARTS Week15

时之虫

ARTS 打卡计划

握草,你竟然在代码里下毒!

小傅哥

Java 程序员 小傅哥 bug 有毒代码

深入理解JVM垃圾回收机制 - GC Roots枚举

Skye

GC Roots枚举 安全点 安全区域 OopMap

阿里巴巴发布国内首个公益区块链标准 用技术让公益公开透明

CECBC

区块链 公益

Golang Package sync 透析

卓丁

sync Go 语言

云原生 go-zero 微服务框架

万俊峰Kevin

微服务 microservice go-zero Go 语言

用函数式写法精简Java代码的一个例子

Sean

Java 函数式编程

从湖南“软硬兼施”,管窥三湘水畔的智能浪潮

脑极体

架构师训练营第十三周总结

张明森

oeasy教您玩转linux010206 蒸汽机车 sl

o

给DevOps加点料——融入安全性的DevSecOps

禅道项目管理

DevOps 运维 测试 开发 安全性

3. 站在使用层面,Bean Validation这些标准接口你需要烂熟于胸

YourBatman

Hibernate-Validator Bean Validation 数据校验

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