白盒测试体系—开篇

原创
2020/04/21 23:58
阅读数 180

随着互联网行业的发展,用户对软件的品质要求也越来越高,且软件的更新迭代速度也越来越快,这里有些项目就得提到白盒测试了。


本文就过去3年我们在白盒测试上积攒的一些经验给大家坐下简单的分享,主要从以下6个方面展开:

  • 什么是白盒测试

  • 为什么要做白盒测试

  • 哪些项目适合白盒测试

  • 什么时候做白盒测试

  • 谁来做白盒测试

  • 如何建立白盒测试体系












1


什么是白盒测试

【简介】

白盒测试即在了解到代码的基础上进行测试,包括但不限于单元测试、接口测试、代码静态检查等等。


【传统的白盒测试】

主要指全面了解程序内部逻辑结构、对所有逻辑路径进行测试,方法上主要单元测试。但这一做法成本极高,需要超过1:1的测试开发比。


【我们的白盒测试】

核心思想就是:

代码技术导向变为用户需求导向,即在了解代码实现逻辑的基础上,从用户需求的角度充分设计测试用例。

当然一些基础底层函数,比如字符串查找等还是只能从代码出发去做传统的白盒测试覆盖,不过这部分比例我们尽可能降低。






2


为什么要做白盒测试

【提升工程效率】

虽然白盒测试前期的成本很高,但是在完成基础建设后效率提升是非常显著的,我们从2016年底开始白盒测试以来,平均每个版本的测试人力成本下降了71.44%


【加强质量覆盖】

对于一些逻辑复杂的模块,单纯的黑盒测试很难覆盖到各种场景。我们从2016年底开始白盒测试以来,平均每个版本的线上事故下降了97%




3


哪些项目适合白盒测试

【逻辑复杂且UI少】

首先如果逻辑很简单,单测也就没有太大的必要了其次如果很多UI强相关,比如各种Android App的UI展示模块,这块涉及到更多的是UI展现、兼容性测试等等,测无法很好的覆盖。


【长期维护】

这个就不用多说了,刚刚也提到了单测的前期投入成本巨大,且收益很少,我们项目的单测也是开展一年多后才出现效率的明显提升。不是长期维护的项目很难收回成本。




4


什么时候做白盒测试

【尽早开展】

众所周知软件开发模型中,问题发现的越晚成本越高所以这里也是建议尽早开展,我们目前的项目流程中,要求在开发提测前就完成70%的单元、接口测试用例,以保证功能主路径没问题。




5


谁来做白盒测试

【研发主导】

这里最理想的模式是由研发同学来完成,Google等走在业界前沿的公司已经做到了这点。


目前我们是要求开发同学负责70%的主路径测试,且项目进度紧张时,测试同学会协助完成。可惜从规范这个流程开始,还没有遇到过项目进度不紧张的时候




6


如何建立白盒测试体系

【提纲】


由于内容较多,这里就先列个提纲:

  • 框架搭建

  • 用例维护

  • 流程规范

  • 结果度量

  • 团队文化



后续每周二我们会继续和大家一起分享如何建立白盒测试体系,欢迎关注,一起交流学习。

本文分享自微信公众号 - 搜狗测试(SogouQA)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部