人人都能开发APP的时代,Testin云测已经帮开发者测试移动应用超过6000万次。
文 | 马旸
在工业化时代,大到一台汽车,小至一只手表,生产方拥有严格的体系去验证产品的质量,以保证交付到市场的产品达到最佳。然而当人类文明进入互联网/移动互联网时代,这项规则正在悄然发生改变:一款APP完成开发后面向市场,有人赞美,有人吐槽,甚至有人进行盗版和改写,大众的参与导致APP再难以像工业时代那样被生产方严格把控。这是王军在2011年决定创办Testin的主要原因。这家真机自动化云测试平台面向海内外超过27万的移动游戏和应用开发者提供服务,已累计帮助开发者测试移动应用超过6000万次。
正如2014年霸占App Store下载排行榜第一名多时的Flappy Bird,这款简单的像素鸟游戏从各种渠道被下载,然后安装至成百上千部各种型号的移动终端内。显然,它的开发者阮哈东(Dong Nguyen)已经失去了对这些软件运行效果的把控,他甚至无从了解Flappy Bird在某些机型上是“打开—闪退”还是顺利运行。但这一点——对APP兼容性和在不同终端上的运行效果提供检测和解决方案——正是王军在移动互联网市场上切下的一块蛋糕。“应用上任何质量的忽视都有可能导致灾难性的结果,而现在的开发者很难自己解决这些问题,这就是Testin云测存在的价值。”
令人头疼的应用测试
2007年,王军团队在为中国移动交付飞信项目,需要每一到两天针对飞信的update版本在约200部Symbian、Windows Mobile和Java系统的手机上进行检测,看飞信的各个功能是否可用,以及在不同型号的机器上有什么问题。此外,他们还要定期到某些远端省市,如广西、云南、四川、重庆、新疆、青海等地,在实际网络环境中测试飞信的运行状况。
王军总结说,那段时间的工作内容一是保证应用能在手机上能跑,二是保证应用在这个手机上到那个地方的网络也能跑。测试是开发过程中最最难过、最最难以搞定的环节。微软几乎是全球最重视软件测试的企业,但是用微软公司全球资深副总裁张亚勤的话说,之前的软件工程时代需要如此,开发、测试,然后销售提供服务;然而现在人人都成了开发者,却并不是每个团队、公司都具有这种庞大的工程体系,让开发者对发布测试进行完整的验证是不现实的。而缺乏完整的制度体系,移动终端的碎片化,对这一现状来说更是雪上加霜。
在中国,由于谷歌官方GooglePlay市场的禁用,Android应用的分发并没有一个类似苹果App Store的统一渠道,应用上线前的测试发布环节也没有机制去验证它是不是能在所有的机器上安装,运行是否流畅。这意味着,APP在发行前所有的测试,全部需要由开发者团队自己完成。
测试成了软件开发过程中最令开发者头疼的痛点,王军在工作经历中的切身体会也使他觉得,或许可以在这个痛点上做点什么。
大叔的创业
2011年,王军和团队成立Testin,一部部买来市面上所有主流型号的手机,连线、组柜,搭建起了最早的Testin云测试平台。那时候的他们恐怕完全没有想到,3年以后,仅仅Testin北京机房就拥有了3800多部手机、平板电脑、智能电视及OTT盒子终端。它们摆在100多个黑色机柜里,一个机柜里配有32个终端,全部按照自动化的脚本在执行应用测试。
2012年5月,Testin所做测试次数达到100万次;2013年5月突破1000万次;2014年6月跨越到了5000万次。测试次数呈几何数暴增,从一定程度证明了王军团队坚定3年只做测试的正确。
创业之初,王军就确定了一个目标:自己所做的一定是努力之后就会有结果的事情,而不是一定比别人更优秀的事情。因为他的团队并不年轻,甚至称得上是大叔级的。大叔级的团队看待问题会多一份冷静,少些冲动,包括在融资选择投资人的问题上,大叔们也有深思熟虑的考量。
Testin成立不到3个月的时候,某家大公司就表示了收购意向。随后一段时间内,百度、阿里巴巴、腾讯BAT三大巨头也分别派投资人跟王军聊过投资。但在Testin团队看来,做测试服务商就必须保持中立,不能带有任何的倾向性。无论是BAT这样的互联网巨头,还是BAT之外的公司,如果刚开始站队很明确,以后很可能就很难再有机会去服务另一部分客户了。另一方面,王军团队认为测试服务是他们想做的一件很大的事情,不希望在一开始的时候就获得巨头的呵护。
最终,Testin选择了IDG资本,希望通过自己的力量把测试这个盘子做大,和巨头之间是平等的对话关系而不是依附。投资后,IDG资本创始合伙人熊晓鸽对王军说:“你一定要在一条大河上,因为大河未来是要产生水的,一定会把你浮起来。你现在不用担心。”
王军确实也不太担心,他认为有一天所有开发者都会成为百万富翁,Testin服务了100万个这样的百万富翁,自己总不至于还仍然是个穷人。只要顺着开发者成长,就总会有对他们提出的更高要求,这种要求也会为他们带来实际利益的增加。
连接开发者和终端厂商
Testin的测试服务采用“免费+增值”的模式,对开发者提出的个性化和定制化的服务要求进行收费。在Testin云测试平台上传APP测试后,Testin会详尽列出测试环节中所有的参数,并会提供自动输出错误、报警等测试日志服务,同时还会出具UI截图、内存、CPU、启动时间等在内的专业化测试报告。在报告中,Testin还会用颜色标注问题的严重程度:红色是致命错误,需要赶快解决;黄色的错误属于亚健康;绿色的和蓝色的基本就是正常。
在王军看来,开发者关心的其实只有两个问题:一是什么导致应用不能跑,二是还有哪些地方值得优化、能否跑出更好的成绩。因此,帮助开发者提前发现、演示出有可能存在的问题,然后对报告进行智能分析,深度挖掘测试数据,从而为开发者提供更为直观的解决方案,是Testin接下来一段时间内的努力方向。
除了软件,还有硬件。硬件厂商能够确保移动终端的芯片、电路、ROM和预装软件没有问题,但却无法判断这个终端出厂之后,开发者的应用是不是针对这个终端做了优化,它的运行效果如何。手机使用过程中一些经常出现的问题,像死机、软件崩溃、操作呈现慢动作、莫名其妙耗电加大、机身发热等等,很大一部分原因是软件的不完善,而非手机的硬件故障,而这些问题会真实影响硬件终端的口碑。
软件的不完善完全可以在测试阶段修复,从而把对终端使用效果的影响、给用户带来的使用体验伤害降到最低。所以在测试过程中,Testin衍生出的一套副产品“安卓中国终端指数”,通过对应用的测试排出了移动终端的各项指数,列出了如最快的手机、最稳定的手机、兼容性最高的手机等等,也提出了终端厂商自身需要解决的问题。
一边为开发者提供服务,一边与终端、芯片厂商合作,Testin无意间连接起了移动互联网中两个最为关键的元素,也使得成立了3年多的Testin具备了别家不可比拟的先发优势,一举成为全球最大的真机自动化云测试平台。