阿里云测找 bug 大赛是阿里移动质量中心和 TesterHome 即将联合举办的 App Testing Marathon 的前站。由南京大学陈振宇教授的 kikbug 和 MQC 主办,TesterHome 协办。
MQC 的黑浪邀请我的时候,正是周五,我问周日南京天气怎样?黑浪说大晴天。我说好。作为协办社区,我还是想去看下。于是有了南京之行。略去很多和此次大赛无关的行程,我只想说南京的雾霾很严重,而且周日多云。。。
我在周日一点半到达现场,黑浪,字白,聚划算同学,还有君临天下的工作人员已经到场了。气氛不算热烈,黑浪说周日恰巧考研,时间点没踩好。不过其实还好,到我 4 点离开的时候,整个教室已经坐满了 40+ 的学生。作为第一次举办活动的 MQC 同学,这样的上座率应该非常欣慰。
由于娃午睡在 4 点醒来,妻一个人照顾不过来,我提前离场了。这差不多 2 个半的时间,还是非常有意思的。对于细节,参与的人才会感同身受,我也描述不好,所以直接谈谈自己的想法:
暖场不够
比赛场地是一个教室,从一点开始就有陆陆续续的人进场,主办方缺少一个暖场方式。要么放些宣传片,要么搞一些自我介绍的活动。这个没有看到,同学进来无从适从,倒是有点像考研的感觉。
场地形式不太好
对于比赛而言,圆桌会更加合适。很多学生都是结对测试,男女搭配。教室前后排的形式不利于交流。我倒是觉得食堂是最适合做这种现场实操的活动的,大家围成一圈,中间放些吃的喝的。吃吃喝喝,成果就出来了。
现场网络不好
主办方架设了几个 wifi,但是都不是很给力,直接导致有同学离场测试。强力的基础设施一定要提前调试,而且要保证质量。
互动不够
我真的觉得有种考研的感觉,特别是聚划算两个妹子在巡场的时候。然后学生有问题,就举手,现场工作人员就到处跑。我想是否能换种方式,比如工作人员打散进入各个队伍(前面说了,很多同学自发组队了),和学生一起来做这个比赛。
这些算是锦上添花的事情,但是个人觉得,如果做好了,就更像一场专业的活动了。对于 TesterHome 即将举办的 123 Appium girl 活动,@oscarxie @anikikun 可以考虑起来。
我在比赛现场,找了几份答卷看了下,大致的情况如下:
未能,也无法充分了解产品设计
这是硬伤,不能理解产品的测试不是好测试,没有跑过全流程的测试,不是完整的测试。虽然我们现在提倡产品或者应用应该 0 成本教育,但是那是对用户,作为该产品的测试,必须了解功能和设计这背后的利益权衡。现场有很多人能发现问题,但是许多问题都是 by design 的。
发现的问题,偏向体验和个人看法
基于第一点,所以必然无法深入测试,要知道设计一套测试用例可不是容易的事情。而指望参赛的同学在不了解设计的情况下,发现有深度的问题,那有点强人所难。我们看下,比赛对 bug 的要求:
相信 4,5,6 和加分项就别提了。当然也还是有个别同学深入到这一块了。
机型偏安卓, iOS 的偏少
学生群体,使用安卓的机型明显超过 iOS 的。这大概也是 kikbug 为啥只做 Android 测试的原因吧。现场的确有学生来问,想对 iOS 进行自动化测试,可惜由于证书的问题,无法进行。所以这又暴露出一个问题,iOS 的众包怎么做?
噪音太多
有很多无效 bug,学生们不知道这些究竟是不是问题。去噪工作谁来做?
MQC 上的众测目前是这样规划的。
我和字白说,你们做这个比赛的一个原因就是想把这群学生拉进来做众测。学生团体有两大优点:
就像我们这个比赛一样,轻轻松松就能组织个五六十号人,对应用来个 bug bash。但是同样也有很多问题,就如我在现场感受到的。
个人认为这样一个群体,如果用来做众测的话,质量不一定会高,有可能效果还不如灰度。(感谢@chenhengjie123同学提出的问题,其实很容易理解,灰度是我求别人来用,众测是我付钱让别人来用,前者无法提需求,后者可以随便要求。另外灰度用户是受众,而众测人员压根都不是用户,工作结束,可能就立马删应用了。)
现如今,做众测的公司和平台越来越多。如果一个公司或者一个平台,如果要做众测,又不想走众包形式,那只能培养自己的测试群体。我通常这样来分:
假如,我是一家做支付的小公司,我负担不起支付宝那么庞大的测试团队,然后我找一个众测公司,这家公司说我能提供一个群体,这个群体的组成都 TMD 来自支付宝的测试团队,而且还不太贵,是不是很有吸引力?但是这样的群体,怎么来驱动?无非就是名和利。这点上 Testin 和 百度 MTC 就做的很好,蝇头小利加一些排行榜。可惜这样子也只能拉到大妈级别的群体(得罪一票人了)。所以在测试群体的培养上,一个是要靠笼络各个层次的测试者,另外一个就是需要培养自己的解决方案团队。
除了测试群体外,众测还需要两个角色,一个是任务析构,一个是结果去噪,这两个是润滑剂角色,任何一个都不能缺失,否者整个众测过程就会很不愉快。
任务析构
所谓任务析构就是指将顾客提交的需求拆分,重构,润色等,转化成顾客想要的测试群体能看得懂的东西,比如需求文档,测试用例。你也许会认为这是测试群体要做的,但是这样子的工作,估计也只有专业的测试做得到吧。你总不至于让大妈们来看交互稿,时序图吧。当然个人认为,这个角色也可以作为众测,外包出去。
结果去噪
如果说任务析构是针对测试群体,那么结果去噪就是针对顾客群体,同时也是考量测试群体做的好不好的地方。测试群体出来的结果肯定不能直接交给顾客。整理结果,去除噪音,以统一的格式交付才是专业的体现。
周日的时候,我问字白,举办这些活动的初衷是什么?他说吸引开发者。我说,那学生群体能达到效果吗?
很明显,学生群体是无法达到字白的需求。学生角色是一个变化角色,就算是计算机专业的,毕业之后也会从事其他行业。那针对于学生群体,我们开展这样的活动的意义在哪里呢?推广公司品牌,推广产品。除此,无他。我相信几天以后,所有的参赛人员都会记得阿里巴巴,记得聚划算,记得那个游戏,应该没有多少人还能记得上下 MQC。这是粘度不是用在测试技术上的群体。
要吸引开发者,就需要有好的生态,特别是这样一个测试平台,那么需要:
在做这些的同时,还需要:
当然最最主要的,但是又最容易被人忘记的就是底层的技术。做一个产品,当已经把技术玩转了,需要把运营和推广玩转,这样才算是一个健康的产品。
MQC 背靠阿里,只要有上头的支持,做好做强不是问题,继续投入资源,找准方向将会有不错的前景。但是阿里善变,谁又能知道。