跨浏览器测试是一种测试,需要大量的精力和时间。 通过不同的浏览器,操作系统,设备,屏幕分辨率测试Web应用程序,以评估针对各种受众的Web内容呈现的过程是一项活动。 特别是如果手动处理。 使用Selenium进行的自动跨浏览器测试可以帮助您节省例行测试活动的时间,并帮助您缩短回归测试的时间。 但是,人们很少喜欢变化。 如果手动测试在您的组织中很流行,那么当您要求他们实施测试自动化时,管理层显然会提出问题。

测试自动化虽然非常有益,但通常可能会证明是昂贵的,但值得吗? 在说服高层管理人员的同时,您可能会发现这是一个难题。 在开发Web应用程序时,将需要您提供使用Selenium进行测试自动化的有效ROI,并强调通过Selenium进行自动化测试对Web应用程序进行自动跨浏览器测试的好处,因为它可以更快地完成工作,而无需人工。


在本文中,我们将讨论使用Selenium评估测试自动化的ROI的不同指标,以及涵盖基础知识和高级技术的ROI计算技术。

使用Selenium评估测试自动化的ROI的指标

您和您的团队成员可以考虑某些度量标准和度量标准,这些度量标准和度量标准可以帮助您在计划从Web应用程序的头开始进行自动化测试时,分析使用Selenium实现的自动化测试的ROI。 这些指标可能因组织而异。 为什么? 嗯,这是一个优先事项,有不同的度量标准,例如检测到的缺陷数量,时间增益或测试覆盖范围会直接影响项目的风险,成本,质量和交付进度。 一些组织可能会优先考虑发现的缺陷数量,因为他们可能认为数量会带来质量。 有些人可能会反之亦然,因为对于他们而言,质量意味着一切。 你拿什么 您认为在测试用例的质量与数量之争中,更重要的是什么。 在下面的评论部分中让我知道您的想法。

话虽如此,在您与高级管理层进行讨论之前,确定关键指标以使用Selenium进行测试自动化计算ROI至关重要。


硒测试自动化的范围

我们知道我们无法执行100%的测试自动化。 那么,您可以执行多少自动化的跨浏览器测试,这是一个需要大量思考过程的问题? 如果您希望为您的Web应用程序执行自动跨浏览器测试,则必须考虑并确定优先级,以及您应该在测试用例中涵盖哪些操作系统? 因为您无法涵盖所有​​情况。 可能的方案总数可能导致数百甚至数千个测试用例。 如果您的自动化测试脚本是如此之长,那么每天可能需要花费相当多的时间评估您的Web应用程序或网站。

简而言之,您需要在此处比较自动化测试用例的总数与可以实现自动化的测试用例的总数。

如果您希望减少使用复杂测试套件的时间,则还可以使用Selenium Grid进行并行测试 。 这样,您可以同时执行多个测试脚本。 但是,为此,您可能还需要考虑多少个并发或并行会话足以满足您的要求? 您可以通过我们的并发计算器进行操作 。

此指标的改进表明,团队可以更快地发现缺陷并快速修复它们,从而在Selenium上实现自动化测试的风险低,投资回报率高。

您将节省多少时间?

使用敏捷,每周或每两周交付一次,并且需求经常变化。 在那种情况下,回归测试的重要性增加了。 实施自动化回归测试用例将减少测试所需的时间,从而获得更多的时间进行开发或其他冲刺的投资。 节省时间是几乎每个需要快速扩展其Web应用程序的组织(尤其是初创企业)的优先考虑。 在评估测试自动化的投资回报率时,时间是您关注的问题之一吗?

您的资源带宽

我们知道,使用Selenium进行测试自动化将帮助您快速推销Web应用程序。 但是,没有哪个组织愿意在员工大部分时间都闲着等待脚本完成的情况下使用它。 要使用Selenium来计算测试自动化的ROI,需要对您所拥有的每个自动化和手动测试仪进行彻底的工作分析。

资源和工具的投资预算

测试自动化可以节省时间和精力。 但是,这涉及到价格的权衡。 您需要考虑可以为多少工具,每个组织(尤其是初创公司)轻松分配多少预算,这些工具需要快速扩展其Web应用程序。 在评估测试自动化的投资回报率时,时间是您关注的问题之一吗?

总缺陷数

每个回归周期完成后的总缺陷数表明了产品质量以及特定项目的有效自动化测试量。

找出自动化测试的真实投资回报率

根据在项目生命周期内需要执行的回归周期数,真实的ROI可以转移到正值区域。 投资回报率通常通过以下公式计算:
ROI =(手动测试成本–自动测试成本)/自动测试成本

但是随着敏捷和DevOps进入市场,经典方法不再有效。 另外,该度量标准也不现实,因为手动测试的次数永远不会与自动测试的次数相同。 用Selenium自动化基于数量计算测试自动化ROI的真实价值并不是很多人的选择。 但这也不是完全被忽视的。

缺陷质量

我认为,这是使用Selenium计算测试自动化的ROI时非常重要的指标。 我相信,使用Selenium进行测试自动化的全部目的是不消除项目中对手动测试人员的需求。 自动化测试的重点是减少测试人员狭窄的工作量,从而使他们可以提出更多的开箱即用的测试用例。 提高测试用例的质量肯定会帮助您更好地构建Web应用程序。

在测试自动化上计算投资回报率时的一般错误

尽管计算ROI涉及使用一些简单公式进行基本计算,但是如果您错过了一些重要参数,则可能会发生错误。 让我们讨论人们在计算ROI时常犯的一些错误。


您真的不是完全忽略手动测试吗?

最大的错误之一就是仅保留自动化测试工作作为主要测量参数。 手动测试将始终很重要。 对于跨浏览器测试,可以自动执行某些方案,但是在某些领域中,您需要通过执行手动跨浏览器测试与Web应用进行实时交互。 因为视觉缺陷比运行自动化脚本更容易手动检测。 始终手动检查网站是否在所有浏览器中都看起来不错或某个导航菜单在特定浏览器中是否正常运行等事实。 如果您使这些测试自动化,它们将无法在使用Selenium进行测试自动化方面提供很高的投资回报率。 即使您不计算手动工作量,您仍然必须花费时间和金钱。

总是想着更大的图景

在使用Selenium测量测试自动化的ROI时,您必须考虑更长的时间。 检查某种测试方法在短时间内如何使组织受益的做法并不理想。 从长远来看,您必须检查它如何影响组织和团队。 而不是几个月,而是要计算3到5年内的影响。 例如,您应该选择左移测试吗? 左移测试是一种方法,可让您集中精力从需求收集阶段尽快进行测试。 背后的想法是考虑错误并尽快发现它们,因为据信在SDLC的较晚阶段发现的错误将比在初始阶段发现的错误贵得多。

您是否同步了组织的功能?

您必须将组织的功能与测试自动化工具堆栈同步。 为了成功实施自动化测试策略,既需要产品知识,又需要自动化知识。 您的团队应该对如何使用计划的自动化工具以及应用程序的工作有清晰的了解。

测试维护是要考虑的重要因素

测试用例的维护是人们在使用Selenium测量自动化测试的投资回报率时往往会错过的另一个因素。 当您使用Selenium进行自动跨浏览器测试时,在成功实施测试策略之后,您将定期需要更新和维护测试用例。 随着您添加新页面,增强或更新Web应用程序的功能,回归套件和测试用例将开始增长。 确保这些测试用例在较长时间内的可用性将需要定期维护。

缺少正确的文档

这是一个非常常见的错误,不仅从自动化测试人员的角度来看,而且从管理角度来看。 应将文档设置为每个组织的标准。 当自动化测试人员编写测试脚本时,他们应该准备一份文档,解释该脚本的用途及其工作原理。 应该提供一个公共知识库来收集有关组织活动的每个自动化脚本的文档。 这将为参与该过程的每个萌芽资源奠定基础。 这也将有助于消除因缺少任何高级测试自动化工程师而导致的Web应用程序可能遭受的附带损害,或者自动化测试人员打算从您的公司切换到另一家公司。 因此,下次使用Selenium计算测试自动化的投资回报率时,请务必牢记为内部员工维护一个这样的知识库所涉及的工作量和带宽。

使用硒实现自动化测试时获得最大投资回报的操作项目

到目前为止,我们已经意识到了常见的错误,即使用Selenium在测试自动化上计算ROI的指标。 接下来是什么? 执行部分。 使用Selenium在测试自动化上获得最大投资回报的最佳方法是什么? 好了,这里有一些值得注意的可行见解,可以帮助您从测试自动化中获得最大的收益。


为新的测试案例实现自动化
这是一个非常重要的考虑因素,尤其是当您从手动切换到自动化时。 假设您要介绍Selenium WebDriver,以在组织中进行自动跨浏览器测试。

  • 计算需要自动化的测试用例的数量

    • 在此步骤中,检查哪些应该是自动化的,哪些应该保持手动。
  • 计算执行您的测试用例的测试人员的小时成本。
  • 如果某些测试人员没有自动化经验,那么也要计算培训成本。

优先考虑自动化新测试用例的过程

我们都知道,回归测试始终被放在首位,尤其是涉及跨不同浏览器的Web应用程序的视觉回归测试以检查其跨浏览器兼容性时 。


回归测试主要涉及对旧测试用例的重复执行,以确保某些新添加的功能或增强功能不会引入任何新的或旧的缺陷。 随着时间的流逝,当您的Web应用程序在体系结构和功能方面不断增长时,保留回归测试手册的过程将变得非常昂贵。 如果您想降低成本,则实施自动视觉回归测试很有意义。

  • 在计算ROI时,假设每个新的测试用例都将很快成为回归测试的一部分。 将它们保留为回归测试策略的一部分。
  • 根据复杂性对测试用例进行排序,并在其中自动进行检查。
  • 如前所述,请考虑维护旧测试用例的成本。

跨浏览器和OS的不同测试配置的测试覆盖率接近100%

自动化测试的主要目标是提高应用程序的质量。 在计算投资回报率时,您还应该考虑以下事实:浏览网站的方式每天都在增加。 市场上有成百上千的浏览器和设备,人们可以在其中查看您的Web应用程序,并且该数目正在定期增长。 定义浏览器兼容性测试矩阵 。

扩大覆盖率的最佳做法

通过执行烟雾测试,单元测试,回归测试,并注意缺陷泄漏,可以提高环境覆盖率。

单元测试–单元测试在运行Web应用程序的测试阶段时涵盖了最多的数量。 当您投资并行测试机制以节省时间时,这总是有意义的。

冒烟测试–将修补程序推送到应用程序中时,并行运行冒烟测试是覆盖测试用例的最佳方法。 自动化烟雾测试是每天评估Web应用程序的好方法。

回归测试–在当今的敏捷时代,快速部署需要越来越多的回归测试来测试版本控制。 运行并行回归测试可确保每个最新版本都像以前的版本一样完美运行,从而帮助您在短得多的时间内扩展测试范围。

请记住缺陷泄漏–这是在生产周期中发生的错误数量,因为在先前的测试阶段未检测到它们。 这些可能是由于功能测试覆盖范围较小或测试环境不佳而发生的。

尝试使用左移测试方法。 这涉及测试人员在应用程序开发之前对其进行验证。 一旦完成特定模块的开发,开发人员还可以通过运行单元测试用例来参与其中。 核心思想是尽早开始发现错误,最终将降低成本。

找出可重用和冗余测试用例的数量

重复的测试用例是可能导致测试预算增加的重要因素。 重新创建您先前用于不同模块的相同测试用例没有任何意义。 重用测试用例会导致测试速度提高和测试周期缩短。

计算此费用涉及检查

  • 重复测试用例数
  • 具有重复组件的测试用例
  • 检测和开发所有这些冗余测试用例所需的时间。
  • 计算使用测试用例管理工具的成本

减少冗余的最佳做法

  • 使用测试用例管理工具查找重复的脚本。 您可以使用这些工具来存储带有自定义字段的测试,然后可以根据您的要求对其进行个性化设置。 使用测试用例管理工具将帮助您快速搜索冗余。
  • 您还可以开发模块化测试脚本,以后可以重用。 找出经常执行的测试。 例如,登录我们的退出功能。 为了检查这两个是否完美,您必须测试多种变体。 创建一个模块化的测试用例,可用于每次登录和注销变体。

使用云端的Selenium网格执行无忧的自动跨浏览器测试

执行方法围绕着使用Selenium进行测试自动化计算ROI的必要领域。 众所周知,Selenium是一个开放源代码测试自动化框架,旨在促进Web应用程序测试。 现在,您可以自行在本地使用Selenium进行自动化测试,也可以使用提供Selenium Grid的基于云的工具之一进行自动化测试。

当您通过自己的基础结构使用Selenium执行自动化测试时,在扩展自动化测试套件时,您必须牢记预算。 您将如何引入新设备? 新的浏览器版本? 您现有的计算机还需要大量硬件升级,才能支持Selenium Grid的并行执行。 但是,如果要通过云上的Selenium Grid执行测试自动化,则可以随项目需求轻松扩展。

硒本身不提供测试报告功能。 您可以根据所使用的语言,使用测试自动化框架来提取测试报告。 如果您使用的是LambdaTest基于云的Selenium Grid,则可以通过我们的Open Selenium API提取这些报告。

两种方法之间的另一个主要区别在于并行测试。 使用在本地计算机上定义的Selenium Grid,您将只能在该本地计算机上安装的浏览器上运行测试用例。 但是,如果您使用的是基于云的Selenium Grid(例如LambdaTest),则可以跨2000多种实际浏览器和浏览器版本进行测试。

请记住,如果没有正确执行并行测试,则仍然存在在测试周期后期遇到缺陷的风险。 您发现错误的速度越快,修复它的成本就越低。

先进的ROI计算技术

现在,我们已经涵盖了基础知识,让我们了解用于计算ROI的高级技术。

效率投资回报率


由于自动化测试用例可以全天候运行,因此ROI的计算以天为单位。 另一方面,对于手动测试,仅计算测试人员的工作时间,平均为8个小时。 构成计算投资回报率基础的公式是

(a)自动化测试脚本开发时间=(每个测试的每小时自动化时间自动化测试案例数)/ 8
(b)自动化测试脚本执行时间=(每个测试的自动化测试执行时间自动化测试案例数ROI期间)/ 18
(c)自动化测试分析时间=( ROI的测试分析时间段)/ 8
(d)自动化测试的维护时间=( ROI的维护时间)/ 8
(e)手动执行时间=(手动测试执行时间 ,手动测试用例数*投资回报期)/ 8

注意: ROI的周期是要计算ROI的周数,如果需要手动操作,则除以8。 只要完成自动化,就可以除以18。

在效率计算中,主要重点是对组织进行多少有效的自动化测试。 金钱因素被认为是次要因素,并非必须包括测试人员的小时计费费率。

降低风险的投资回报率

这涉及独立计算自动化的收益。 我们将再次以使用WebDriver进行跨浏览器测试为例,以了解其工作原理。 在手动测试期间,整个测试团队过去通常会花费大量时间在多个浏览器上重复运行相同的测试用例。 引入自动化之后,他们有很多额外的时间来执行生产性工作,例如设计测试用例,分析应用程序等。总之,降低风险的ROI解决了以前未解决的问题。

随着自动化的实施,测试覆盖率增加。 完全取决于手动测试将导致不必要的错误,这些错误可能会在交付后出现。 因此导致产品质量降低以及测试效率降低。 这种可能的损失被认为是一种风险。 投资成本没有变化。 仅计算组织可能在没有实施自动化的情况下可能面临的金钱损失。

这是一个包装!

感谢您的阅读,我希望您现在拥有扎实的知识和明确的战略,以帮助您说服高级管理人员围绕Selenium进行测试自动化的ROI。 不要误以为ROI仅是比较手动测试Web应用程序与自动化测试用例所花费的时间和金钱。 有很多因素需要考虑,每种因素都有其自身的优点和陷阱。 此外,无法使用单个公式来计算ROI。 有多种机制,您需要选择什么取决于组织的需求和项目的情况。 测试愉快!


翻译自: https://www.javacodegeeks.com/2019/06/calculate-roi-test-automation-selenium.html

您如何使用硒来计算自动化测试的投资回报率?相关推荐

  1. selenium自动化测试_您如何使用Selenium来计算自动化测试的投资回报率?

    selenium自动化测试 跨浏览器测试是一种测试,需要大量的精力和时间. 通过不同的浏览器,操作系统,设备,屏幕分辨率测试Web应用程序,以评估针对各种受众的Web内容呈现的过程是一项活动. 特别是 ...

  2. selenium_您如何使用Selenium来计算自动化测试的投资回报率?

    selenium 跨浏览器测试是一种测试,需要大量的精力和时间. 通过不同的浏览器,操作系统,设备,屏幕分辨率测试Web应用程序,以评估针对各种受众的Web内容呈现的过程是一项活动. 特别是如果手动处 ...

  3. web自动化如何在不同浏览器运行_您如何使用Selenium来计算自动化测试的投资回报率?...

    跨浏览器测试是一种测试,需要大量的精力和时间.通过不同的浏览器,操作系统,设备,屏幕分辨率测试Web应用程序,以评估针对各种受众的Web内容呈现的过程是一项活动.特别是如果手动处理.使用Seleniu ...

  4. web自动化如何在不同浏览器运行_测试冷知识科普:使用Selenium来计算自动化测试的投资回报率...

    跨浏览器测试是一种测试,需要大量的精力和时间.通过不同的浏览器,操作系统,设备,屏幕分辨率测试Web应用程序,以评估针对各种受众的Web内容呈现的过程是一项活动. 特别是如果手动处理,使用Seleni ...

  5. 功能自动化测试的策略有哪些?

    目录 前言 为什么要功能自动化测试? 功能自动化测试的投资回报率 功能自动化测试流程 利用多元化的专业知识建立质量检查团队 自动化测试策略 测试模块化 测试库架构 关键字驱动 数据驱动 录制/播放测试 ...

  6. html项目_Python Selenium项目实战之添加发送HTML测试报告邮件!

    说明 继第一个实战项目的基础上添加自动发送报告邮件接口,代码有部分调整 变动 1.增加文本文档SendToUserinfo.txt 用来保存邮件接收者的信息 2.修改测试报告文件名称格式并添加repr ...

  7. Selenium自动化测试的【投资回报率】还能这样计算

             目录:导读 前言 使用Selenium评估测试自动化的ROI的指标 Selenium测试自动化的范围 您将节省多少时间? 您的资源带宽 资源和工具的投资预算 总缺陷数 缺陷质量 在测 ...

  8. 《QTP自动化测试进阶》(1)

    学习<QTP自动化测试进阶>第一章. 采用不同的项目开发模型对自动化测试有不同的影响. (1)瀑布模型:瀑布模型在需求定义方面做得很好,这对自动化测试是有益的,包括可以尽早选择合适的自动化 ...

  9. 信息系统项目管理师-计算题专题(三)上午计算小题

    盈亏平衡点的计算 解答 第一题: 300000 +  1000X = 1500X X=600 第二题: 100+10P = 540-40P P=8.8 第三题: 160000 + 2X = 12X X ...

最新文章

  1. 【numpy学习笔记】数组的创建和基本运算
  2. 编程中new[]和delete[]应该如何使用?
  3. 浅谈人工智能应对数字化转型挑战的5个领域
  4. thrift使用小记_CUDev-ChinaUnix博客
  5. 网络安全与机器学习(二):网络安全任务如何结合机器学习? 1
  6. Linux console on LCD
  7. vue 实现页面静态化
  8. MongoDB分布式(分片存储)部署
  9. Brave Game【博弈】
  10. oracle视图可以带日期变量么,创建视图时日期字段如何只都天
  11. 问题:动态变换video标签source的src不起作用
  12. python编程入门书籍-python入门书籍推荐
  13. python3.6 +tkinter GUI编程 实现界面化的文本处理工具
  14. VUM升级esxi主机6.0至6.7U3失败-无法再主机上执行升级脚本
  15. JPG图片怎么转换成Word文档
  16. wifi转串口芯片——ESP8266:配置与使用
  17. 爬虫系列:某家小区房产信息及POI数据获取
  18. 西门子TIA博途仿真器PLCSIM使用教程
  19. 通配符选择器/后代选择器(包含选择器)/选择器分组
  20. 玩吃鸡时错误服务器维护,更新吃鸡时发生错误无法连接服务器 | 手游网游页游攻略大全...

热门文章

  1. POJ2083-Fractal【分形,分治】
  2. 【2018.3.10】模拟赛之一-ssl2574Closest【深搜】
  3. ARC107——D - Number of Multisets
  4. 牛客小白月赛 27部分题解
  5. AtCoder Beginner Contest 174 总结
  6. 小麦亩产一千八(jzoj 3461)
  7. 【最小环】【Floyed】观光旅游(ssl 1763)
  8. Sentinel(二十五)之Sentinel Dashboard同步Apollo存储规则
  9. Mybatis中强大的功能元素:resultMap
  10. 从零开始用好 Maven : 从 Hello World 到日常使用