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

更多相关文章

  1. 如何测试并调试基于 NDK 的 Android(安卓)应用
  2. 深度剖析 | 阿里热修复如何精简优化补丁资源?
  3. Android(安卓)Monkey工具
  4. Android(安卓)自动化测试之Monkey参数介绍及其停止办法
  5. (转载)Android性能测试初探
  6. Android仿照薄荷appBMI控件实现
  7. 阿里云消息推送服务
  8. android 性能测试 基础入门
  9. 星云精准测试对安卓底层驱动代码的测试案例分析

随机推荐

  1. android layout_weight讲解
  2. 针对4.0版本及以上版本的sharedpreferenc
  3. Android(安卓)根据 Url 跳转应用
  4. Android(安卓)3.0 r1 API中文文档(108)
  5. Android中界面实现全屏显示的两种方式
  6. 更新Android(安卓)SDK Manager Mac下修改
  7. Android(安卓)Studio 更新中的问题
  8. SeekBar自定义样式
  9. 在android 输出log 信息 用于调试
  10. 【Android(安卓)Native Code开发系列】七