谈到google测试遇到的问题和挑战之前,我想简单的罗列下国内App测试行业遇到的几个共同的问题:
(1)测试人员的价值输出难以衡量。现在很多项目发布上线,大部分价值都是开发贡献的,还有一部分是产品经理贡献的,测试贡献的就是锦上添花,很难让人信服业务发展价值的贡献。
(2)用户体验测试难以形成。随着这些年的App测试技术的发展,测试人员保证产品上线质量上没有任何问题,但是在移动互联网时代,用户对产品的体验要求更高,不是要求没有功能性的问题,而是要好用,用的很爽,这里面测试能产生的价值就需要好好思考了。
(3)自动化测试和手工测试的平衡。这几年自动化测试技术的发展,让很多公司的测试团队都大力开展自动化测试,包括敏捷测试的推广,都是自动化测试对于产品的价值体现不能够分析的非常清楚;同时对应自动化测试和手工测试的融合度不够清晰,导致一个产品的自动化测试和手工测试的分布不均或严重不足等各种情况。
(4)开发测试全栈之路。大家都说测试人员是守门员,是质量的最后保证。阿里集团这边有些BU的测试工程师的独立测试工作已经取消了,目的是想让开发同学自己负责起自己的代码质量任务,自己做好自测工作。测试人员也去做开发工作,当然也就包括自己开发功能的测试工作。目前这种做法也是一个尝试过程,是不是要这么个极端,还是测试和开发工作内容的慢慢渗透,这些想法会在最后一part,测试的未来中详细的讨论。
当然了,国内App测试行业遇到的问题和挑战不仅仅是这些,而且每个公司都会不一样。google测试在经历这些年的发展,对于测试职责的理解也会存在变化,还是会出现一些问题,具体如下:
(1)认为测试是很容易的事情。测试阶段一直是软件开发周期中的最后一环,很多人会认为测试人员成了开发人员的拐杖(防止开发人员跌倒了,形象的比喻防止了开发发布上线的产品挂了),测试人员把很多质量保证的事情都做完了,责任方也很容易确定,就可以直接发布上线了。或者觉得测试是一种很容易的事情,可以随时外包出去,让测试不再成为软件研发的瓶颈。
(2)测试人员更关注自己的角色,而不是他们的产品。google内部也是存在这个问题,这种现象可能是开发和测试的组织结构分离有关。测试团队会更加关注测试效率,测试技术创新,测试框架开发等,对业务产品的发展和用户体验的关注度相当会缩小。
(3)测试人员往往崇拜测试产物胜过软件本身。更多人认为测试的价值是在于测试的动作,而不是测试产物。所有测试产物的价值,在于它们对代码的影响,进而通过产品来体现。独立的测试团队,倾向于把重点放在建设和维护测试产物上。其实测试人员必须把产品放在第一位。
(4)测试做了很多后,发布出去的产品还是会存在漏测。是谁在做测试并不重要,关键是进行了测试,内部试用者、可信赖的测试者、众包测试者,以及早期用户都可能比测试工程师更容易发现bug。实际上,让TE做的测试越少,支持其他人做的测试越多,效果就越好。
其实作为大公司还会遇到其他的挑战,比如之前我们经历过工具的百花齐放的辉煌时代,现在就需要解决测试工具的统一性问题(各个BU或部门都会使用自己开发的工具),这个挑战涉及到各个BU或各个部门的绩效和心血,不是那么容易解决的。现在阿里测试团队BU化,这个问题就会更难解决了,重复建议不可避免,这个就需要我们的测试架构师更多的了解和融合其他测试团队的测试工具和测试创新。
另外还强调一个挑战就是线上监控,大家都知道,互联网的速度和效率要求最高,让用户成为你的测试人员无可厚非,但是从系统层面来看,我们还是希望线上系统在运行过程中,能自动化监控线上数据的正确性和完整性,从而监控线上功能的正确性,甚至能自动化的解决这些线上bug。当然了,这个问题我们也在探索实践过程中,特别是双11&12大促期间,线上几百个页面和数据的自动化检查和监控。另外就是从线上大数据的分析过程中,计算出业务逻辑规则存在的漏洞,也是我们近期需要解决的方向,甚至可以根据我们设定的数据检查服务来自动化的订正线上错误的数据。
更多精彩,请看https://www.testbird.com/
有疑问加站长微信联系(非本文作者)