产品发布后,一个QA的总结与思考
作者:网络转载 发布时间:[ 2012/12/12 10:52:43 ] 推荐标签:
现有的自动化测试有哪些不足呢:
● 自动化环境的部署略显复杂。让一个新人跟着文档部署好一套自动化环境,至少需要半天时间,要掌握基本的troubleshoting技巧,写自动化脚本,差不多需要一周时间。
● 自动化关键字的实现稍显复杂。部分原因是Domino这样的环境决定的。
● 部分自动化测试用例执行时间偏长。
自动化测试是个持续投入的过程,一套稳健的自动化测试能提高你对产品质量的信心。
2、迭代测试
基于这样的开发模型,每一轮迭代,和测试相关的活动有这些:写SRS(也可以RD写),SRS的review, 根据SRS完成Test Design,创建测试用例,测试用例review,一轮新功能的测试,每天自动化回归测试,发现问题,验证问题,又一轮新功能测试,后一轮full cycle测试,实现新功能的自动化,性能测试等。
四轮迭代下来,新增测试用例700左右,提的tracker有360多个。因为早期自动化测试的投入,大大减轻了后期手动回归测试的工作量。可以想象下,四个平台,每个平台又要支持多个操作系统版本,这样的测试工作量!
在每次迭代过程中,测试而言,有哪些地方可以做的更好呢?
首先,每轮迭代后,是不是可以做下测试用例的Refine,即新创建测试用例的优化,可能创建用例的时候时间比较仓促,对产品的理解不透彻,或其他什么原因,在执行的过程,或多或少都会发现测试用例的不合理,有些测试点缺少测试用例,也是当初的测试用例没有覆盖,有哪些地方需要优化的呢?
● 测试用例的执行步骤(Step), 预期结果(Expected Result)。 可能是需求的变化,或则创建用例时理解的错误,按照步骤得不到预期结果,这时候需要调整执行步骤,或则预期结果。
● 测试用例的优先级(Priority)。随着测试的进行,对产品的理解也更加透彻,这时候对测试用例的优先级可能和当初写测试用例的时候有些变化。
● 补充测试用例。回过头来看那些已经发现的bug,你会发现很大一部分不是通过当初设计的测试用例发现的。这时候需要及时补充测试用例。
其次,每一轮迭代测试后,好好分析研究那些已经提交的Tracker, 整理统计这些bug,会学到很多。
● 在测试的过程中关注Bug曲线、分布。那个的测试理论“Defect Clustering”告诉我们bug总是喜欢扎堆出现,通过Bug曲线,你会知道那个模块这段时间需要重点测。下面这两幅并不是Bug曲线图,而是我统计的导致产品Crash的Bug的分布,能告诉我哪些模块的代码质量如何。
● 关注Bug的Root Cause。我觉得一个好的QA不仅发现Bug, 而且应该有意识的尝试提出Bug预防策略。通过把Bug分类,把Root Cause类似的bug放一起,你会发现很多Bug是可以避免的。比如,之前SEG在处理一个用户提交的bug时,发现这是由于用错了数据类型。而在这一版中,也发现了三四个由于用错数据类型导致crash的例子。如果能整理出来,给RD,让他们有这个意识,这样的Bug可以避免。下面这个图统计的是导致crash的Root Cause有哪些。
● 那些每个Iteration都会出现的Bug。四次迭代,期间都经历的UI的变动,每次添加一个新的Feature,都会在log数据库,Notification,隔离数据库中添加相关的UI界面。你会发现每次那些细微的地方,如log数据库中的delete records, log records, notification中新加的功能的条目, 还有那个Copy按钮,RD在第一次迭代的时候,不会注意到这些地方的UI也需要改动,在第三次迭代的时候RD可能换了一个人,这时候他也不会关注到这些地方,这种类似的问题,每次迭代都提,是不是可以在RD在做这一块的时候,给予些提醒呢?
● 通过Bug反思测试用例设计。当发现一个Bug并不是通过已有的测试用例发现的(这种情况很常见),特别是新功能,这时候我们可以回忆下当时设计测试用例的时候,是怎么想的,当时采用了什么方法,有没有更好的测试用例设计技术。上一篇文章讲的是这个问题。
● 通过分析Bug获得测试经验。近在看<探索式测试>这本书,书中讲到一些测试方法。比如取消测试法,看看那些提交的tracker, 在安装那一块,我们发现有好几个bug,都是关于“back”按钮不起作用的。再如,强迫症测试法,我们发现的一个类似的是,把我们的一个进程reload十次,crash了,另一个连续敲15次同样的命令,也crash了。我想说的是这些测试方法,测试经验的总结,而这些测试经验的获取应该是通过与Bug的一次次亲密接触获取的。
需要整理思考的还有很多,这次先写到这里吧。
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11