本节书摘来自异步社区《移动App测试的22条军规》一书中的第1章,第1.2节移动App的生命周期,作者 黄勇,更多章节内容可以访问云栖社区“异步社区”公众号查看
1.2 移动App的生命周期
移动App测试的22条军规
(1)对于还处于开发阶段但准备不久之后投入市场的一款新App,鉴于并没有已经实际使用App的用户,所以测试人员要“预测”真实的用户所使用的设备和平台。在这种情况下,首先需要了解使用App的主要用户是哪一类人群,比如说是发烧友,还是商务人士。发烧友极有可能使用的是最新的设备和平台;商务人士更多使用的是成熟的平台,高端一些的设备;而如果用户是普通大众,就需要通过Apple和Google官方发布的版本占有率数据来帮助测试人员进行有依据的“拍脑袋”了。
以下是Apple官方发布的iOS版本占有率数据(https://developer.apple.com/support/appstore/),如图1.3所示;和Google官方发布的Android版本占有率数据(http://developer.android.com/
about/dashboards/index.html),如图1.4所示。
(2)对于已经发布并且有稳定用户群的App,测试人员可以使用在桌面应用开发时用到的工具,例如Google Analytics或Omniture SiteCatalyst(现在Omniture被Adobe收购了,工具也改名叫做Adobe Analytics)来统计用户的信息,从而确定App支持和需要测试的设备及平台。这里对于App有一点要求,就是App需要联网对后台的服务器发送请求,从而能获取到用户信息。
Google Analytics(Google分析,网址为http://www.google.com/analytics)是Google的一款免费的网站分析服务,使用范围十分广泛。Google Analytics功能非常强大,只要在网站的页面上加入一段代码,就可以提供丰富详尽的图表式报告。Google Analytics的特点是简单易用,但是相应的缺点就是不可定制化。Google Analytics的页面如图1.5所示。
Omniture SiteCatalyst(Adobe Analytics,网址为http://www.adobe.com/solutions/digital-analytics.html)是一个进行网站基本指标的搜集、报告和分析的工具。通过这个软件可以得到网站和App的访问量、浏览量、跳出率、转化率、来源等诸多指标。只要在App中对不同事件以及发送请求都添加相应的Omniture追踪,然后再登录Omniture的网页就可以进行用户数据分析。Omniture SiteCatalyst不同于Google Analytics的一个特点是,它可以对数据进行高级细分,也就是说,可以对用户的各种操作打上不同的标签,在服务器端搜集到信息后进行统一的筛选和分析。Omniture SiteCatalyst的页面如图1.6所示。
(3)对于上面两种情况,有一种特例需要考虑,就是在有新的操作系统版本将要发布的时候,需要参考以前操作系统版本升级时用户更新的进度。正如图1.3和图1.4所示,在iOS 8发布3个月之内有68%的用户进行了升级,而使用iOS 7之前版本的用户只有4%;而Android 4.4 Kitkat发布一年后,市场占有率才刚刚达到39.1%,有超过52.7%的用户使用的还是4.0~4.3版本的Android,甚至还有8.2%左右的用户还在使用着Android 2.x的设备。
根据这些数据,测试人员在iOS操作系统版本升级时需要及早适配新的App版本;而对于Android发布新的操作系统时,测试人员主要还得关注当前市场占有率高的那些老版本。