自动化测试经济效益分析

自动化测试的理解误区澄清:
1. 是不是所有测试用例都可以自动化。
——不是所有的测试用例和测试步骤都可以转化为自动化测试。
        在自动化测试投入较多的行业领先企业其自动化测试率有的能达到80%左右,但仍有20%左右的测试用例需要手工来进行测试。在国外通常从开发第一版测试用例时,就同步进行自动化测试脚本的开发,所以自动化测试率普遍比中国的企业高。
2. 自动化测试找不到bug。
——自动化测试不直接找bug,而是通过解放有经验的测试工程师的生产力,让其从重复的回归测试中解放出来。从事新测试方法和测试手段的研究,通过自动化测试解放出的生产力来间接找到更多更深层次的新bug,将产品质量再提高一个档次。
3. 自动化测试一定会马上大量减少测试人员数量。
——自动化测试不会大量减少测试人员数量。因为开展自动化测试初期需要投入一定的人力进行自动化测试脚本开发,并逐渐将自动化测试脚本用于日常的测试中,逐步减少手工测试人员从事重复劳动的时间和人数。为了缩短自动化测试脚本的开发时间,可考虑将自动化测试脚本的开发工作借助外包的力量来早日实现大规模的自动化测试。
4. 自动化测试能代替手工测试。
——自动化测试不适合新功能测试,适合对软件质量稳定且经常需要被测试的模块进行投入开发。
5. 只有性能测试才需要自动化。
——自动化测试不光进行性能测试,更被大量应用于功能测试验证,在国外超过半数的自动化测试脚本都是用于功能验证测试。
        通常自动化回归测试较手工回归测试有如下优势:
1. 大大缩短回归测试项目的时间,在减少了人力投入的同时,更能保证研发  项目能按时市场发布。甚至能缩短研发周期,提前发布产品。
2. 在同样的产品研发时间内,能对产品进行更全面的多次测试,将新引入的问题尽可能的在产品发布前挖掘出来。
3. 能保障回归测试的质量。因为每次自动化回归测试都是保持同一个标准的步骤,环境和测试方法。所以测试结果具有一致性。
4. 让更有经验的测试工程师从回归测试中解放出来,专注于新的测试方法的研究,来发现更多产品深层次的问题。
5. 减少测试工程师人数,降低研发成本。因为实施自动化回归测试后,厂商就不用像以前一样保留一定的人力来专职进行回归测试。
6. 能避免测试人力和时间的紧张,而降低了回归测试的质量要求,导致引入了新问题而未被发现。
7. 没有在手工回归测试中因为测试工作的重复性和测试工程师对已测过功能的过于自信,而导致测试覆盖面不全,新引入问题没被发现的人为隐患。
8. 避免了部分工程师非主观的疏忽大意,没有发现新引入的问题。
   。。。。。。。。。
        事实上除了如上所述自动化回归测试对产品质量保证所带来的好处外,还有其他诸多优势。基于本文不是一篇专门进行自动化回归测试详细介绍的文章,而是一份专注于自动化回归测试经济效益分析的文章。所以,我将不再对自动化回归测试所带来的这些又省钱又省时又高质量的特性进行介绍和描述,而将完全从财务的角度来分析自动化回归测试的投入产出比。
        目的是从企业投入产出的角度来对自动化回归测试的财务投入和财务产出进行量化的分析,让读者能够对自动化回归测试所带来的好处有个更直观的认识和了解。

        自动化回归测试与手工回归测试经济效益分析报告中分析数据的选取,是基于两个标准:
1. 所有工作量的估算数据都来自于多名5年以上测试经验工程师的建议。
2. 所有工作量的估算方法,都是以基于对厂商有利的原则。如:我有意减少目前手工回归测试的工作量,加大自动化测试开发的时间和成本。希望在此基础上算出的数据也能让未开展自动化测试的厂商直观的看到开展自动化测试上在财务上仍然有着非常高的投入产出回报比。
        分析数据的取样标准:
        人力成本估算标准:
        厂商研发成本计算标准1.5万人月( RMB )
        一个月的工作日为 22天
        工作量估算标准:
        模块单元:
        以完成一个DHCP大小模块的工作量为一个模块单元,即1个模块单元的手工回归测试时间为16个工作小时(不含性能测试)。 
        自动化开发标准:
        假设一个模块可自动化测试部分的手工测试执行时间为8小时。那么该模块的自动化测试开发时间=手工测试执行时间8小时+脚本开发时间 8小时+脚本调试时间16小时。一个自动化测试模块的开发时间为手工测试时间的4倍。

        结论数据表:
        手工回归测试与自动化回归测试完成一次全面回归测试所需的时间表:
(单位:月)
         vbvb

        小型产品线实施自动化测试后的投入产出表:

            vbvbvbv

        中型产品线实施自动化测试后的投入产出表:

              bvvb

        总的规律是:一年中进行的全面手工回归测试的次数越多,投入自动化测试的投入产出比越高。以目前某顶尖网络设备企业为例,它的自动化回归测试程度可以达到一周2轮全面回归测试来保证产品的质量:48小时完成一轮回归测试,72小时输出所有报表。从而大大解放了测试工程师的生产力,让其可以专注于新模块和新方法的测试,同时不用担心老模块的质量问题。

一个小型产品线案例
回归测试工作量(单位:模块单元)
            

bvbf

        总结:一个小型产品线大致有72个模块单元需要进行回归测试。
完成一轮较全面的回归测试
        需要投入[(72个模块单元×16小时)/8]/22=6.5人月=6.5×1.5万=9.75万
        如果有2人专门从事手工回归测试,完成一次较全面的回归测试需要3个月,一年可执行4次全面回归测试。
        如果有3人专门从事手工回归测试,完成一次较全面的回归测试需要2个月,一年可执行6次全面回归测试。
        如果有4人专门从事手工回归测试,完成一次较全面的回归测试需要1.5个月,一年可执行8次全面回归测试。
        假设一半的功能可以转化为自动化测试。那么从人力投入上可以从6.5个人月减少到3.5个人月。那么每次全面回归测试需要投入费用也减少3×1.5=4.5万。

完成一次较全面的回归测试
        如果有2人专门从事剩余的手工回归测试,需要1.75个月,一年执行7次全面回归测试。较未自动化测试前可多测试3次,同时人均生产率提高了75%
        如果有3人专门从事剩余的手工回归测试,需要1.17个月,一年执行10次全面回归测试。较未自动化测试前可多测试4次,同时人均生产率提高了67%
        如果有4人专门从事剩余的手工回归测试,需要0.875个月,一年执行14次全面回归测试。较未自动化测试前可多测试6次,同时人均生产率提高了75%
        自动化测试开发成本计算
        总开发时间为72个模块单元×8×4=2304小时=288天/22=13人月
        13×1.5万=19.6万
        自动化测试过后,每轮手工回归测试直接节省的成本为原全手工测试成本的一半即每轮回归测试可节省9.75/2=4.88万
        因此四轮较全面的回归测试就可以收回所有的自动化测试的开发成本。
        自动化测试开发投资回报计算
• 如果有2人专门从事剩余的手工回归测试,一年可执行7次全面回归测试。  则1.75×4=7个月收回所有投资。
        以后每年节省  7轮回归测试×每轮节省4.88万=34万
年投资回报率=34万/19.6万=173%
• 如果有3人专门从事剩余的手工回归测试,一年可执行10次全面回归测试。则1.17×4=4.7个月收回所有投资。
        以后每年节省  10轮回归测试×每轮节省4.88万=48.8万
        年投资回报率=48.8万/19.6万=249%
• 如果有4人专门从事剩余的手工回归测试,一年可执行14次全面回归测试周期。则0.875×4=3.5个月收回所有投资。
        以后每年节省  14轮回归测试×每轮节省4.88万=68万
        年投资回报率=68万/19.6万=347%
一个中型产品线案例
        回归测试工作量(单位:模块单元)

yuu
yu


        总结:一个中型产品大致有144个左右模块单元需要进行回归测试。
完成一轮较全面的回归测试,需要投入
[(144×16)/8]/22=13人月=13×1.5万=19.5万
        如果有2人专门从事手工回归测试, 完成一次较全面的回归测试需要6.5个月,一年可执行2次全面回归测试。
        如果有3人专门从事手工回归测试,完成一次较全面的回归测试需要4个月,一年可执行3次全面回归测试。
        如果有4人专门从事手工回归测试,完成一次较全面的回归测试需要3个月,一年可执行4次全面回归测试。
        假设一半的功能可以转化为自动化测试。那么从人力投入上可以从13个人月减少到6.5个人月。那么每次全面回归测试需要投入费用也减少6.5×1.5=9.75万
完成一次较全面的回归测试
        如果有2人专门从事剩余的手工回归测试,需要3.5个月,一年执行3.5次全面回归测试。较未自动化测试前可多测试1.5次,同时人均生产率提高了75%
        如果有3人专门从事剩余的手工回归测试,需要2.5个月,一年执行5次全面回归测试。较未自动化测试前可多测试2次,同时人均生产率提高了67%
        如果有4人专门从事剩余的手工回归测试,需要1.5个月,一年执行8次全面回归测试。较未自动化测试前可多测试4次,同时人均生产率提高了100%
        自动化测试开发成本计算
        总开发时间为144个模块单元×8×4=4608小时=576天/22=26人月
    26×1.5万=39万
        自动化测试开发完成后,每轮手工回归测试可节省手工测试一半的成本9.75万。
        因此四轮较全面的回归测试就可以收回所有的自动化测试的开发成本。
        自动化测试开发投资回报计算
        如果有2人专门从事从事剩余的手工回归测试,一年可执行3.5次全面回归测试。则3.5×4=14 个月收回所有投资。
        以后每年节省  3.5轮回归测试×每轮节省9.75万=34万
        年投资回报率=34/39=87%
        如果有3人专门从事从事剩余的手工回归测试,一年能进行5次全面的回归测试。则2.5×4=10个月收回所有投资。
        以后每年节省  5轮回归测试×每轮节省9.75万=48.75万
        年投资回报率=48.75/39=125%
        如果有4人专门从事从事剩余的手工回归测试,1.5个月为一轮全面回归测试周期,则1.5×4=6个月收回所有投资。一年能进行8次全面的回归测试。
        以后每年节省  8×每轮节省9.75万=78万
        年投资回报率=78/39=200%

转载于:https://www.cnblogs.com/shadowicool/articles/1061219.html

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值