cba认证收益在哪里(自动化测试指南5成本与收益CBAROI))
更新时间:2022-08-26 03:39:02概述
测试自动化对软件测试的许多领域有各种影响。它可以节省成本和资源,同时也可以解决许多与测试有关的问题。但也有不少失败案例,大量的投资引起客户的不满,最终叫停了自动化测试。了解测试自动化的成本与收益以及计算投资回报率将有助于领导团队决定投资于测试的自动化工具。CBA是进行ROI计算的常见方法。
成本-效益分析(CBA Cost-benefit analysis)
CBA 是一种相对简单且广泛使用的技术,用于决定是否对测试自动化进行投资。顾名思义,只需将效益的价值加起来,然后减去相关的成本。成本可以是一次性的,也可以是持续的。效益最常见的是随着时间的推移而得到。选择测试自动化而不是人工测试的标准理由是,在产品或项目的生命周期内,收益超过成本。对收益和成本做实际分析,可以鼓励更好的决策,并确保有效地分配资源来支持测试自动化。
CBA应该在任何项目的规划阶段(实施之前)开始。随着需求的发展,我们应该能够确定测试方法或技术,并开始制定测试计划和策略。这个早期的纲要将有助于定义和计算自动化策略和CBA。测试领导层负责确保CBA在自动化中的执行。领导应该在CBA所需的所有领域拥有自动化测试开发的专业知识。
在计划软件测试自动化和分析成本和效益时,有许多因素需要考虑。自动化改变了从设计到实施、测试执行和测试结果分析的测试的复杂性。自动化测试的开发、维护和执行与手工测试有很大不同。在实行自动化时,技能、测试方法以及测试本身都会发生变化。这些影响有积极和消极的成分,在执行CBA之前必须考虑。
测试自动化的CBA应该考虑的主要因素有以下几点。
- 项目规格或产品要求 - 要求是CBA需要考虑的主要因素。例如,为大型用户群或多个版本设计的产品会影响测试自动化方法和相关的好处。基于一组复杂需求的产品可能很难实现自动化,而且可能产生长期的维护成本。
- 要测试的功能 - 功能性和非功能性的特点。有些功能可能不需要任何测试。例如,与定制开发的产品相比,一个现成的商业产品(COTS)可能需要最少的测试。
- 软件解决方案的迭代或发布和测试 - 一个在未来需要多次迭代的产品可以成为自动化回归测试的合适人选,并在长期内提供高回报。
- 软件测试和测试方法 - 这些的成本和收益受软件开发生命周期的影响。基于DevOps的产品开发需要在多个环境中频繁测试,人工测试可能不可行或产生高成本。
- 自动化投资的回报率 - 这是CBA计算的一个关键因素。投资回报率是根据许多假设来估计的,如果任何相应的假设发生变化,就需要重新审视它。
- 当自动化被引入时,测试中的进度差异和性能影响。
- SUT的未来迭代 - 未来迭代的数量与SUT的生命周期和测试的数量。
- 工具补丁、更新等 - 工具补丁、补丁窗口、频率和专业的补丁支持是需要考虑的主要因素。
- 可用的资源(如硬件、工具、人员) - 任何形式的测试所需的资源都需要考虑CBA。重要的是,正确的资源可用于估计CBA。
- 以前测试结构的可重用性 - 这可以减少成本,同时增加效益。然而,以前的结构会产生额外的维护成本。
- 测试策略和计划 - 测试策略和计划将提供解决方案在其生命周期内所需的测试水平和类型的指示。
- 自动化脚本的维护: 自动化测试脚本需要根据SUT的变化、测试工具的增强或新版本等进行修改。
CBA框架
执行CBA的第一步是定义你正在测试的内容和你计划自动化的内容。这必然来自于产品或项目计划和测试计划,以及以前的自动化工作。
效益是根据有形和无形的因素来估计的,它们可能会受到风险和假设的影响。测试可以手工进行,也可以通过自动化进行,或者两者混合进行。工作分解结构一般用于进一步明确潜在的结构。必须为每个潜在结构收集详细的数据,以估计成本和效益。一些可能的数据来源是产品知识、过去的项目、领域知识、当前的自动化成本和在线白皮书。
高级别的CBA框架的步骤
- 确定潜在的测试结构
- 确定假设和风险
- 估计效益:有形和无形的效益
- 估算成本
- 将成本和效益转换为可比较的价值
- 比较替代方案和决策
识别潜在的结构 选择一种水平的测试而不是另一种水平的标准理由是,在项目的生命周期内,收益超过成本。对使用各种测试结构的收益和成本进行分析,可以鼓励更好地做出决策。在进行CBA时,应该考虑三种不同的结构,所选择的结构应该是在预算和时间表考虑范围内最具成本效益的。这些结构是。
- 自动测试(只有自动化)。
- 手动测试 自动测试
- 人工测试(仅人工)。
在比较结构时,应确保所有结构都考虑了相同的测试覆盖水平。在这一点上,一些结构可以被拒绝,因为它们是不可行的。
确定假设和风险:由于我们在分析这些结构时,会有很多的假设,而且会有风险。重要的是要确定假设,并在事实或先前经验的基础上对其进行验证。例如,我们可以假设这个版本的SUT将有一个操作系统和三个服务或安全包。根据我们的跟踪记录和数据,我们将决定可行性和可维护性是否会成为一个问题。这也提供了一个平台来解释为什么一些结构在分析中被放弃。如果我们确实在早期考虑并取消了一些结构,因为结论是不可行的,那么这个结论背后的假设应该被清楚地解释和证明。
估计效益 任何自动化的效益都可以是有形的或无形的。它们通常是混合的,有时很难衡量。评估有形和无形的好处并给它们一个价值或权重是很重要的。这可以是积极的,如降低成本和快速测试。可能的有形和无形的好处列举如下。
有形的好处。
- 人的参与 - 自动测试可以在测试中减少人的参与,节省时间,而不是手动运行相同的测试。
- 代码覆盖率 - 代码覆盖率可以用来估计测试的有效性。自动测试可以非常有效,给SUT的功能提供更多的覆盖率和可视性,例如测试一个SUT的大量数据集。
- 测试执行时间 - 自动测试可以减少测试执行时间,因为计算机通常比人更快。
- 系统的下班后测试 - 自动测试有助于全天候运行测试。
- 当前迭代和未来迭代的人工测试时间会减少。
- 手工不可能的,例如负载测试。
无形的好处。
无形的好处很难评估,但却是CBA的一个关键因素,通常与有形的好处交织在一起。
- 无人值守测试 - 尽管人员成本的减少很容易衡量,但节省计算机使用的任何额外价值都很难量化,是一种无形的好处。
- 测试良好声誉 - 这通常会增加测试的生产力,因为知名的测试机构对他们的方法有很高的接受度,建立的标准,丰富的内部专业知识和可重复使用的测试自动化解决方案(TASs),以帮助测试自动化。
- 人员 - 不是所有的测试团队成员都想改变。一些人员的流动往往伴随着测试自动化发生。
- 质量的变化 - 自动化后的质量可以更好,因为自动化测试可以提高测试覆盖率和一致性。
- 测试执行周期的数量 - 自动化通常允许更快地确认产品构建,并为组织提供额外的机会,更频繁地运行相同的测试。这对手工测试来说可能是不可行的。
- 回报 - 在很长一段时间内,自动化可能有意想不到的回报,如快速发布和减少测试成本。对于一些自动化,例如构建验证测试,可以看到立即的回报,但通常情况下,一些回报是在投资之后才出现的。
- 增加可靠性 - 自动化测试可以更可靠,因为它可以避免由于重复运行相同测试的无聊而导致的人为错误。人是不同的,人工测试执行的质量取决于个人能力。
- 客户满意度 - 自动化测试的测试证据更加一致和可靠。这可以提高内部和外部客户的。
估算成本:与自动化测试相关的财务成本一般可以描述为固定成本或可变成本。自动化的固定成本是设备、工具、培训等方面的支出。可变成本根据开发的测试数量或运行测试的次数而增加或减少。以下因素对解决成本问题有帮助。
- 自动化测试可能会产生堆积如山的结果,可能需要更多的工作人员参与分析,因此运行成本比人工测试高。
- 自动化规划、开发和执行的时间。
- 人员成本是自动化成本的一个关键因素。成功的测试自动化需要具有自动化测试经验的人,有经验的人增加了测试的整体成本。
- 硬件资源成本,如工具安装、执行、配置管理和测试执行机器所需的基础设施。
- 测试软件,如软件许可证或软件支持,如社区和工具供应商的专业支持。
- 自动化环境维护,如测试自动化脚本备份。
- 工具引进、培训和提升,如供应商的培训、编程语言的培训和认证费用。
- 测试执行成本,如自动化测试的运行频率、执行所需的资源、结果分析和执行的许可成本。
在某些情况下,可能没有数据来提供足够的成本估算。在这种情况下,最好的选择是利用团队成员的判断和以前的经验来估计成本。
将成本和效益转换为可比较的价值:在对每个结构选择的成本和效益进行估算后,你将得到有形的(货币)价值和主观的效益水平的混合。一般来说,给效益分配一个财务数额是比较困难的。如果没有现实的方法将无形效益的价值与有形效益联系起来,就不能认为它们对成本分析有意义。在这种情况下,如果结构的比较没有显示出一种结构是明显的赢家,它们可以被用作决策制定者。努力应该被转换为努力水平(LOE),并为其分配一个货币价值。
比较替代方案:在这一点上,可以通过比较每个结构的净收益(收益减去成本)来进行分析,以确定哪种结构最适合当前项目。应该选择净收益最大的方案。
投资回报的计算
一般来说,自动化测试涉及的前期成本比人工测试高。对测试自动化进行投资回报率分析,有助于预先确定什么类型的自动化是项目的理想选择,需要什么工具,测试需要什么水平的技能。投资回报率不仅可以作为努力的理由,而且也是项目规划过程中的一个必要部分。那些没有预先进行投资回报率计算的项目并不完全了解他们的自动化工作的成本,他们可以做什么类型的自动化与他们正在做的相比,以及应该采取什么策略来最大化他们的回报。投资回报率也许是赢得决策者兴趣的唯一最有效的方法。如果你有令人信服的数字,并有可靠的事实支持,如果你能证明在测试自动化上花的每一英镑都会有两英镑的回报,例如,那么你几乎可以保证获得资金。
投资回报率是净收入和投资之间的比率。投资回报率被广泛用于选择投资方案。投资回报率衡量的是某项投资的回报量。
当涉及到测试过程自动化时,成本是有形的。但净现值也包括许多无形的因素(正如我们在 CBA 中已经讨论过的)。CBA中的发现可以用于投资回报率的计算。最好的方法是尽可能精确地确定收益,然后将其与自动化测试工作的成本进行比较。
计算投资回报率的几个不同的公式是。
- ROI = 回报/投资
- 投资回报率=你得到的/你投入的
- 投资回报率=(收益-成本)/成本
- 自动化的投资回报率 = 自动化比人工带来的好处/自动化比人工带来的成本
- 自动化的投资回报率=自动化的成本-人工测试的成本
相关推荐
- 最新资讯
-
- 2022-11-18 电竞宣萱(“吃鸡”呆萌和书生组合果然是无敌,真的是钢枪组合,所向无敌)
- 2022-11-15 实况足球曼联时刻测评(实况足球:曼联传奇——吉格斯测评)
- 2022-11-15 迭戈-科斯塔将在今夏离开马竞(官方:马竞宣布与迭戈-科斯塔解约)
- 2022-11-15 皮克就是罚款大户(皮克狂炸了赛场公开出言讽刺西甲主席 大嘴或被追加停赛)
- 2022-11-15 lol官网(10年前的LOL官网:只有40名英雄,那时候盖伦都还没上线)
- 2022-11-15 巴西对秘鲁角球数(巴西8强战存一大隐患!主力后腰累积黄牌停赛,后防将经受考验)
- 2022-11-15 张效瑞沈祥福能给深足提供帮助(张效瑞确认沈祥福出任深足教练组组长:训练和临场指挥均由他负责)
- 2022-11-15 葡萄牙vs乌拉圭首发(出战世界杯稳了!孙准浩替补踢半场长传成功率高 一优势有望获重用)
- 2022-11-15 湖人vs步行者全场回放2020(詹姆斯暴砍39分,湖人队加时124-116击败步行者)
- 2022-11-15 尤文逼和国际米兰(欧洲足坛疯狂一夜:阿森纳巴黎全胜,尤文2-0国米,曼联爆冷输球)
- 推荐攻略
-
-
乌克兰总统身亡(乌总统泽连斯基解除乌总检察长及国家安全局局长职务)
-
足球比赛每个半场多少分钟(足球比赛每半场几分钟)
-
2021中超今天哪里转播(今晚!中超2场对决,CCTV5 直播申花PK武汉,腾讯体育亚泰vs天津)
-
2022梅西坠机身亡事件结果(足坛变天!巴萨无缘榜首的2年:梅西告别,老马去世,2-8惨案)
-
2021全运会篮球直播赛程辽宁(4月22日央视直播:CBA总决赛;赵心童vs马奎尔,塞尔比vs颜丙涛)
-
中国最强导弹(世界洲际导弹前10排名,中国东风导弹领先美国,第一名堪称导弹王)
-
2021篮球比赛在哪里看(CCTV5直播NBA 辽篮争夺CBA总决赛冠军点 颜丙涛出战斯诺克世锦赛)
-
东航结果不敢公布了(民航局再次回应东航MU5735事故调查!查明原因有多难,多久公布?)
-