设为首页收藏本站language 语言切换
查看: 478|回复: 0
收起左侧

TaobaoQA:测试手段分析之测试模型

[复制链接]
发表于 2010-2-10 16:28:07 | 显示全部楼层 |阅读模式
<>测试手段的定义已经说了,那我们想在测试的时候,其测试手段的多样性带来很多的好处肯定比较多,为啥我们可以这么说呢?</P><br><> 我们可以好好分析下我们现在所做的功能测试,测试设计和测试执行时间很长,看似花的时间很长,应该是对于功能的测试比较彻底了,这里说到的功能测试也就是我们目前所做的功能测试,包含真正的功能测试和一些与功能相关的</P><br><>测试手段。那么我们会出现很多现象:</P><br><>我们在第三轮测试的时候发现的bug相对第一轮来说少很多</P><br><>我们无法去验证功能测试是否已经完全的彻底</P><br><>我们对于可靠性和场景测试关注不够</P><br><>我们太过于依赖需求文档去做测试设计和执行</P><br><>我们太过于压抑自己的创造力</P><br><> 这些都可以说明,我们还有些地方做的不够深入。那我们认为使用多个不太彻底的测试手段的结果要优于单一的彻底的测试手段。</P><br><>如下模型可易理解:</P><br><> <IMG height=148 alt=11 src="http://www.hh010.com/upload_files/article/136/9_old0kn11.JPG" width=279></P><br><>我们目前的测试模型:</P><br><><IMG height=167 alt=22 src="http://www.hh010.com/upload_files/article/136/9_7pe93s22.JPG" width=540></P><br><>而如果我们采用多样的测试手段是如下的测试模型:</P><br><><IMG  size-full wp-image-5644" height=223 alt=33 src="http://www.hh010.com/upload_files/article/136/9_hgzhx733.JPG" width=611></P><br><>现在我们来分析下我们在做测试执行时的几个很关键的步骤吧:</P><br><>先看下如下的模型图: 横轴是测试执行时间的走向</P><br><>可以看到,项目刚开始的时候,我们只需要用一些很基本的测试手段,很基本的用来去测试。一般是主要流程和重要功能。同样我们还可以看到如果使用一些高级测试手段去测试看似很稳定的系统时,会有一些意想不到的效果。就是说我们在系统越看似稳定的时候,越要采用更高级的测试手段去测试,设计更复杂的场景去测试。这样做事基于如下理由:</P><br><>系统软件的免疫性越来越强</P><br><>遗漏的bug大部分是场景比较特殊的异常情况</P><br><>发现高质量的bug更能体现我们测试人员的价值</P><br><>找出目前功能测试的盲点</P><br><>上面是从多个角度来说明测试手段多样性的必要性。</P><br><>多样性地测试</P><br><>高级测试</P><br><>项目周期</P><br><>复合测试</P><br><>还有我们从bug缺陷图来看下我们将来测试手段多样性带来的bug分布图:</P><br><>首先是我们目前的bug走势图:</P><br><><IMG  size-full wp-image-5645" height=221 alt=44 src="http://www.hh010.com/upload_files/article/136/9_5xsk9n44.JPG" width=462></P><br><>这里可以看到我们第一轮过后其bug是几乎都是下降的,知道zero bug</P><br><>我们采用多样性测试后的bug走势图:</P><br><><IMG  size-full wp-image-5646" height=214 alt=55 src="http://www.hh010.com/upload_files/article/136/9_q79wxr55.JPG" width=441></P><br><>这里面可以看到无第二轮测试的概念,但bug fix的验证是无处不在,我们会采用回归测试这个手段,具体如何执行这个手段需要和开发沟通。我们可以明显的看到如果采用多样性的测试手段,其bug数量不会一直减少,在采用多样性测试阶段其发现的bug率不会低于积极地测试阶段。而且不会有较大的差别。</P><br><>最后我们根据上次说的那些测试手段,结合我们的项目实际情况,我们可以采用多样性的测试手段来避免更多的盲点。我们可以对SUT说,你变强了,我会变的更强。那就是随着测试手段的高级性和多样性,会让SUT暴漏更多的隐藏的bug。</P><br><> 这里我们先看下我们的目前的测试执行流程:</P><br><><IMG  size-full wp-image-5647" height=141 alt=66 src="http://www.hh010.com/upload_files/article/136/9_hdlp7b66.JPG" width=586></P><br><>那我们再看看如果我们引用多样性的测试手段的话,会是什么样的测试执行流程呢,看如下:</P><br><><IMG  size-full wp-image-5648" height=311 alt=77 src="http://www.hh010.com/upload_files/article/136/9_ztvh2a77.JPG" width=640></P><br><>可以看到,这里面还是比较丰富的,但大家可能会存在如下疑问:</P><br><>这样复杂的测试手段,是不是我们的测试执行时间会拉长?</P><br><>怎样对各个测试手段进行测试设计,甚至是测试执行呢?</P><br><>运用这些多样性的测试手段是否真的能发现那隐藏多年的bug呢?</P><br><>这些高能力的测试手段的掌握要经过什么样的培训和实践呢?</P><br><>带着种种疑问,我们继续探索未来那美好的现实,继续从理论和实践中找出真理。我们会遇到很多质疑和困难,但这些都不可怕,可怕的是我们必须坚信于自己的信念和勇气能够这个行业带来崭新的标准和前景。</P><br><>我也将为了之前那些问题继续学习,继续讨论,继续实践,继续完善,直到我们可以做到那不一样的精彩。 大家一起努力。</P><br><>以上分析参考James Bach的书籍和Paper。</P>
您需要登录后才可以回帖 登录 | 论坛注册

本版积分规则

QQ|Archiver|手机版|小黑屋|sitemap|鸿鹄论坛 ( 京ICP备14027439号 )  

GMT+8, 2025-2-27 14:58 , Processed in 0.051616 second(s), 23 queries , Redis On.  

  Powered by Discuz!

  © 2001-2025 HH010.COM

快速回复 返回顶部 返回列表