Android白盒测试情况

目前Android测试还是以黑盒测试为主的,白盒测试固然是好,但白盒测试的实现成本对于App的快速迭代和敏捷开发来说难度过高。

造成Android白盒测试的困难有:

Android系统本身的测试支持不够

对测试人员的专业技术要求过高(而且我们团队测试同时支持iOS)

需求开发和更改时,也会依赖测试排期

那移动开发团队如何保证应用的质量呢?

拿我工作过的腾讯和阿里的两个Android团队举例,产品用户量级都在百万级别以上,机器crash率在0.5%左右,算是国内的主流应用团队了。我们的团队里面依靠以下几个关键点来保证应用的质量:

1.完整的需求评审流程

需求评审

方案评审

设计评审

测试用例评审

2.完善的bug反馈系统

3.crash日志收集上传

4.oa系统:bug和需求流转(阿里的宙斯盾,腾讯的tapd)

5.多样性的测试方式

Monkey(阿里,腾讯都有)

冒烟测试

系统测试(黑盒,白盒

6.规范的发布流程

产品体验

内部体验

分级灰度

全量发布

热修复发布

前面提到的这么多策略,只有系统测试的时候可能用到白盒测试,所以白盒测试并不是Android质量保证的全部,知识其中一个部分。对于较大的团队白盒测试的重要性还是很高,因为良好的Android Unit测试用例可以解放部分测试人力,规范测试流程。同时也是测试人员技术含量的提现。

其实,Android Unit测试对于更偏重于开发人员,很多的Android Unit测试都需要开发人员的参与,如果你要做Android白盒测试如下的建议可以酌情参考:

1.使用良好的程序框架设计(MVP,MVVC)

2.关键协议数据的JUnit测试用例(在阿里的时候是开发人员自己写)

3.关键流程的单元测试(登录、支付、首页等)

最后,应用的质量不能依赖于测试人员(facebook据说是没有测试的),开发人员要养成良好的自测习惯,随时记录代码中可能出现的问题,因为只有开发人员最清楚哪里可能出问题。应用的质量要靠整个团队的协作而不是互相依赖来保证。

你可能感兴趣的:(Android白盒测试情况)