一种自动化测试的效益分析方法

一种自动化测试的效益分析方法

1.工作量估算

用例的工作量(包括手动和自动化)的统计分三部分:准备、执行和结果分析。其中“准备”阶段包括设计测试用例、准备测试数据、自动化的编写测试脚本等的工作量,“执行”即手动执行或自动化执行的工作量,“结果分析”即手动分析测试结果或自动化统计运行结果的工作量。
现在假设某一产品,有9个功能模块,我为每个功能都设计(编造)了不同数量的用例数量,其统计结果如下表:
在这里插入图片描述

2.数值分析

下面对上表进行数值分析:

1.“准备”消耗量:
上表中,手动测试在“准备”阶段的总共的工作量是15小时每人,自动化测试在该阶段总共的工作量是57小时每人。自动化工作量明显大于手动测试,是因为自动化在此阶段要多出编写测试框架和编写测试脚本的工作,会涉及到代码的编写,工作难度和复杂度远远高于手动测试工作。

2.“执行”消耗量:
上表中,手动测试在“执行”阶段的总共的工作量是13.7小时每人,自动化测试在该阶段总共的工作量是3.4小时每人。这里可以很明显的看到自动化的优势,自动测试工具是根据测试脚本自动进行测试,不需要任何人工干预;而手工测试是完全由人工手动完成测试的,自动测试工具运行测试要明显快于手工测试。

3.“结果分析”消耗量:
上表中,手动测试在“结果分析”阶段的总共的工作量是9.5小时每人,自动化测试在该阶段总共的工作量是6.7小时每人。对于手工测试的结果分析,需要把执行测试过程中记录下来的错误进行统计和分析,生成电子表格形式的测试结果总结报告。其报告主要记录了成功的测试用例,失败的测试用例以及一系列的缺陷原因和统计数据;对于自动测试的结果分析需要把自动化测试工具生成的测试结果报表进行整理,导入到相应的测试数据库中。自动测试的结果分析不需要人工地进行测试报表和测试数据的统计,这些工作都由自动测试工具完成,这节省了大量的时间。所以,总体来说自动测试的结果分析时间小于手工测试的结果分析时间。

3.效益分析

结合上表,测试组期望引入自动测试技术后,自动测试的消耗量(AW)小于手工测试的消耗量(MW),即AW<MW。但是从表中,知道仅仅一次自动测试的消耗是大于一次手工测试的消耗(AW=57+3.4+6.7=67.1,MW=15+13.7+9.5=38.2,AW>MW),所以仅仅执行一轮的测试对于测试组来说,自动测试没有带来任何好处。但是,对于一个项目的功能测试往往需要有多轮的回归测试,验证测试以及由于新加系统功能点和需求变化的测试等等。通过计算表中的数据,就可以得到在第几轮的测试后AW<MW。

假定n表示测试轮数,测试n轮后的消耗量=准备消耗量+n*(执行消耗量+结果分析消耗量)。

那么:

对于手动测试MW为:

MW = 15 + n * (13.7 + 9.5)

对于自动化测试AW为:

AW = 57 + n * (3.4 + 6.7)

通过AW<MW计算,可以得到n>3.2。所以得出进行到第四轮测试后,自动化的消耗量会小于手动测试的消耗量。

更多的测试轮数后,测试资源消耗如下表:
在这里插入图片描述
由上表可以清楚的看出,随着测试轮数的增加,数值差值越来越大,意味着自动化测试会节省越来越多的时间。

发布了42 篇原创文章 · 获赞 15 · 访问量 9791

猜你喜欢

转载自blog.csdn.net/weixin_40326608/article/details/100892645