《创业邦》Testin云测:应用测试中的痛点和商机
本文刊载于《创业邦》9月刊
记者:马旸
在工业化时代,大到一台汽车、小至一只手表,所见即所得,生产方拥有严格的体系去验证产品的质量,以保证交付到市场的产品达到最佳。然而当人类文明进入互联网/移动互联网时代,这项规则正在悄然发生改变:一款APP完成开发后面向市场,有人赞美、有人吐槽,甚至有人进行盗版和改写,大众的参与导致APP再难以像工业时代那样被生产方严格把控。这是王军在2011年决定创办Testin的主要原因。这家真机自动化云测试平台面向海内外超过27万的移动游戏和应用开发者提供服务,已累计帮助开发者测试移动应用超过6000万次。
正如2014年霸占AppleStore下载排行榜第一名多时的Flappy Bird,这款简单的像素鸟游戏从各种渠道被下载,然后安装至成百上千部型号的移动终端内。显然,它的开发者阮哈东(Dong Nguyen)已经失去了对这些软件运行效果的把控,他甚至无从了解Flappy Bird在哪些机型上是“打开-闪退”,或者顺利运行。但这一点——对APP兼容性和不同终端APP运行效果的检测和解决方案提供——正是王军在移动互联网市场上切下的一块蛋糕,“应用上任何质量的忽视都有可能导致灾难性的结果,而现在的开发者很难自己解决这些问题,这就是Testin云测存在的价值。”
令人头疼的应用测试
2007年,王军团队在为中国移动交付飞信。需要每一到两天针对飞信的update版本,在约200部Symbian、Windows Mobile和Java系统的手机上进行检测,看飞信的各个功能是否可用,以及在不同型号的机器上有什么问题。此外,他们还要定期到某些远端省市,如广西、云南、四川、重庆、新疆、青海等地,在实际网络环境中去做测试飞信的运行状况。
王军总结说,那段时间的工作内容就是第一保证应用能在手机上能跑,第二保证应用在这个手机上到那个地方的网络也能跑。“测试是开发过程中最最难过的、最最难以搞定的环节,其他的环节可以在服务器上编写一些脚本去自动执行,而一旦到了手机上,测试1部可以,100部可以,那么1000个呢?在办公室里测100部、1000部可以,到了那些远端城市呢,又不知道是什么情况了。”
微软几乎是全球最重视软件测试的企业,开发人员和测试人员的比例高达1:2——一名开发人员配备两名测试人员。这其实是非常健全的测试体系,从开发级别的测试、beta级别、发行后的测试,到发行后补bug打补丁,然后安全测试、回归测试到远程测试等等一应俱全……但是用微软公司全球资深副总裁张亚勤的话说,之前的软件工程时代需要如此,开发、测试,然后销售提供服务;然而现在人人都成了开发者,并不是每个团队、公司都具有这种庞大的工程体系,让开发者对发布测试进行完整的验证是不现实的。
没有足够的资源、时间去验证APP的质量是应用测试中面临的一个巨大问题,而缺乏完整的制度体系、移动终端的碎片化,使得这种困难更加雪上加霜。在中国,由于谷歌官方GooglePlay市场的禁用,Android应用的分发并没有一个类似苹果AppStore的统一渠道,应用上线前的测试发布环节也没有机制去验证,它是不是能在所有的机器上安装?运行是否流畅?这意味着APP在发行前所有的测试,全部需要由开发者团队自己完成。
测试成了软件开发过程中最令开发者头疼的痛点,王军工作经历中的切身体会也使他觉得,或许可以在这个痛点上做点什么。

Testin云测CEO王军
大叔的创业
2011年初,王军和团队成立Testin,一部部买来市面上所有主流型号的手机,连线、组柜,搭建起了早起的Testin云测试平台。那时候的他们恐怕完全没有想到,3年以后,仅仅Testin北京机房就拥有了3800多部手机、平板电脑、智能电视及OTT盒子终端,它们被摆在像墙一样的一百多个黑色机柜里,一个机柜里配有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的测试服务采用免费+增值的模式,对开发者提出的个性化和定制化的服务进行收费。在Testin云测试平台上传APP测试后,Testin会详尽列出测试环节中所有的参数,并会自动输出错误、报警等测试日志服务,同时还会出具UI截图、内存、CPU、启动时间等在内的专业化的测试报告。在报告中,Testin还会很细心的用颜色标注问题的严重程度:红色是致命错误,需要赶快解决;黄色的错误可以忽视它,属于亚健康;绿色的和蓝色的基本就是正常。
在王军看来,开发者关心的其实只有两个问题:一是什么导致我的应用不能跑,二是我还有那些地方值得优化、能跑更好的成绩。因此帮助开发者提前发现、演示出有可能存在的问题,然后将报告智能分析,深度挖掘测试数据,从而为开发者提供更为直观的解决方案,是Testin接下来一段时间内的一个努力方向。
除了软件,还有硬件。硬件厂商能够确保移动终端的芯片、电路、ROM和预装软件没有问题,但却法判断这个终端出厂之后,开发者的应用是不是针对这个终端做了优化、它的运行效果如何。手机使用过程中一些经常出现的问题,像死机、软件崩溃、操作呈现慢动作、莫名其妙耗电加大、机身发热等等,很大一部分原因来自是软件的不完善,而非手机的硬件故障,而这些问题却会真实影响对硬件终端的口碑。
软件的不完善完全可以在测试阶段修复,从而把对终端的使用影响、对用户带来的使用体验伤害降到最低。所以在测试过程中,Testin衍生除了一套副产品“安卓中国终端指数”,通过对应用的测试排出了移动终端的各项指数,列出如最快的手机、最稳定的手机、兼容性最高的手机等等,也提出了终端厂商需要解决的自身问题。
一边为开发者提供服务,一边与终端、芯片厂商合作,Testin无意间连接起了移动互联网中两个最为关键的元素,这也使得成立3年多的Testin具备别家不可比拟的先发优势,一举成为全球最大的真机自动化云测试平台。
试错之路
“试错”是王军回顾创业时频繁提到的一个词,“Testin所做的事情就相当于在不断试错,最后找到一条可以走通的路。并不是说别人走不通,而是说他要走通这条路,如果不按照我的路去走,也会走错其他的路。那要是照我这条路去走,你也需要经历我这样试错的过程。”
“所以竞争不是不存在,它永远存在,但是这种竞争很难会撼动Testin今天所取得高度。”
创业这件事情,在他眼里更像是爬山,如果抬头望山会畏惧不前,但低头迈步就会取得高度。“我觉得创业,不在乎你的起点在哪,年龄多大,而在乎的是你对你要做的事情能不能持续的投入。只要你投入,你一定能站到你所走的路别人看不到的风景。而这往往是别的人很难见证的。”