如果几年前,质量管理部门都试图通过ROI指标来证明对测试的投资是合理的,那么现在情况发生了变化,是时候重新审视这个问题了。当实施连续测试,并且每天在不同的环境下以不同的角色运行多次测试自动化时,由于测量方法与以前大不相同,因此ROI成为不合时宜的术语。试图衡量和证明测试投资合理性的未来5-10年的关键术语应该是VALUE。

连续测试的目的

在说明投资回报率一词之前,让我们先设定一下现代测试自动化尤其是连续测试的目标。

在敏捷测试宣言中,我用粗体标记了此类测试背后的关键价值。

  • 持续测试超过在种种环境进行测试。
  • 拥抱所有的测试活动而不仅仅是在自动化功能测试。
  • 在整个团队中进行测试,而不是在孤立的测试部门中进行测试。
  • 产品覆盖率超过代码覆盖率。

如果要应用上述方法,则此类测试的主要目标是通过整个团队对产品进行的高价值测试以及整个测试类型(功能性和非功能性)来识别业务风险。在上面的陈述中,除了测试的值之外,没有任何度量或量化方法。

连续测试的关键支柱

为了实现连续测试, 组织应着重于内部创建测试自动化的能力,并在可靠的实验室中以及一天结束时按需大规模执行它,或者使用智能方法分析结果以使测试有意义量化的结果数据。


如果上述支柱符合组织的测试策略和优先级,则用于创建和执行测试的工具和技术将相匹配是有具有非常重要的意义的。

这里最大的问题是:我该如何证明在上面的提到的方面进行的投资?有哪些相关措施?每个步骤中谁都拥有什么样的权利?什么样子才是正确的?

从投资回报率到测试价值

为了解决上述问题,让我们确定谁在当今的敏捷和DevOps实践中进行测试。提供高质量和高价值的软件是功能团队的责任。考虑到这一点,将业务测试人员,开发人员和测试自动化工程师一起工作,并创建自动化测试方案以及手动探索性测试以实现其目标。虽然可能有现代化的COE或质量领导职能来监督组织内部的测试策略,确定预算和工具,但实际工作实际上是在团队内部完成的。

如果您与我一致认为价值是测试中最重要的事情,那么让我们尝试将价值分解为度量:

  • 周期内的测试数量
  • 重复发现缺陷的测试数量
  • 导致CI作业失败的测试数量
  • 因根本原因(对象ID,实验室,编码技能,平台状态等)分类失败的测试数量

尽管还有其他指标,但上面的指标清楚地表明了测试实际上是否符合他们期望的发现错误,或者仅仅是在制造麻烦和软件团队浪费。

从一些市场标准来看,每个KLOC(1000行代码)平均存在10-15个缺陷,每个KLOC都有0.5个缺陷逃到生产中。如果遵循这个数字,很明显,现在发现和报告的绝大部分的缺陷都是误报。要在连续测试中取得成功,需要有纪律和对价值的正确衡量,以确保报告为错误的大多数失败测试确实存在问题,相反的情况会在整个DevOps团队中造成混乱。

考虑到这一点,团队必须承认测试质量和产品质量是及时的事实,因此,您需要不断地对其进行测量和维护,以获取产品的实际状态。

如何实现比价值?

长话短说,在测试生命周期中,只有一个地方可以提供整个测试活动的价值,这就是测试报告!

如果您从编写代码的那一刻起就考虑到测试的整个生命周期,包括调试,执行和提交到现行中,那么开发人员(无论可能是谁)都会在测试“通过”之时告别测试。在他的环境中。只有在正式测试周期中测试失败(可能是CI,其他事件触发的回归等)时,测试所有者和测试之间的团聚才会发生。这意味着,从测试集成到套件直到失败为止,都有一个盲区。除了对测试感到满意以外,没有真正的理由来复盘它(如果它当然是一项高价值的测试)。现在,考虑一下一组1000个平均失败率为10%的测试案例。这意味着我们现在有100个失败的测试场景,需要有人审查和报告。每KLOC 10-15个缺陷,事实表明至少有80%的测试不是真正的bug。该团队现在必须处理80个测试用例的调试,这些调试可能会也可能不会增加产品的价值。

我认为到目前为止,这一点很明确–> 测量测试自动化值是从上述指标开始的,并且大多数测试用例的概念在以10倍的时间作为回归运行时都不会揭示关键的错误。要了解哪些测试可以增加价值,什么没有增加价值,什么仅仅是误报和不稳定的软件工程,您需要对测试活动的每个领域都具有适当的测试报告和质量可视性。

底线–投资时间,即金钱的资源,应牢记这些测试的附加值。每个周期使用老式的通过/失败测试效果不错,但无法跟上当今技术的步伐,因此,需要对测试如何实时,随时间,针对每个平台,针对每个功能区域进行更认真的检查。不要太依赖您的测试代码,如果短时间后仍不能证明自己,只需删除它即可。您只能通过报告评估测试是否带来了价值。


  • 郑重声明:文章禁止第三方(腾讯云除外)转载、发表,事情原委测试窝,首页抄我七篇原创还拉黑,你们的良心不会痛吗?

技术类文章精选

  • java一行代码打印心形
  • Linux性能监控软件netdata中文汉化版
  • 接口测试代码覆盖率(jacoco)方案分享
  • 性能测试框架
  • 如何在Linux命令行界面愉快进行性能测试
  • 图解HTTP脑图
  • 将swagger文档自动变成测试代码
  • 五行代码构建静态博客
  • 基于java的直线型接口测试框架初探
  • JUnit中用于Selenium测试的中实践

非技术文章精选

  • 为什么选择软件测试作为职业道路?
  • 写给所有人的编程思维
  • 成为优秀自动化测试工程师的7个步骤
  • 手动测试存在的重要原因
  • 成为自动化测试的7种技能
  • 自动化和手动测试,保持平衡!
  • 自动化测试生命周期
  • 如何在DevOps引入自动化测试
  • Web端自动化测试失败原因汇总

测试中如何管理外包质量_如何从测试自动化中实现价值相关推荐

  1. 测试中如何管理外包质量_【项目管理】资深游戏测试总监详解质量管理工作的9个步骤...

    看了这张图,你看官方有没有打消游戏测试就是拿工资玩游戏的观点,呵呵. 一款游戏的质量保证工作,基本都是围绕上图中的具体工作展开的.为了保证测试任务的效率和质量,项目团队中的测试人员承担所有上述工作是不 ...

  2. 软件测试中最复杂的业务_复杂软件开发项目中的有效测试

    软件测试中最复杂的业务 手动还是自动测试? 该软件总是由人创建,经过人测试并且在大多数情况下是由人使用的. 任何负责任的测试人员最糟糕的梦想是错过一个严重的错误. 测试人员尝试仔细检查需求并编写测试用 ...

  3. 测试眉形的有哪个软件_这五款自动化软件测试工具,你最喜欢用哪个?

    对测试自动化的依赖性增加导致大量自动化软件测试工具的出现,使得很难确定哪些是最好的.为了帮助您完成自动化工作,我们根据自己和他人的经验创建了五大最佳自动化软件测试工具列表. 1. Selenium S ...

  4. 敏捷开发中的任务拆分法_在关键任务系统开发中使用敏捷的5个技巧

    关键任务系统和敏捷开发 关键任务系统对人类安全有重大影响. 这些系统的故障成本可能非常高,不仅造成财务损失,有时还导致人身伤亡. 将敏捷方法应用到其严格而复杂的开发中,可以帮助防止失败,提高质量,提供 ...

  5. 中软国际java 学徒_辽宁建筑职业学院-中软国际 现代学徒制校企合作签约仪式...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 2019年6月17日,辽宁建筑职业学院校领导一行莅临中软国际参观指导暨现代学徒制签约仪式隆重举行.中软国际教育集团执行CEO李佳历.中软国际大连ETC执行 ...

  6. python中构造方法可以被继承吗_构造函数是在python中继承的吗

    我正在研究麻省理工学院6.00开放式课程的一个习题集,我有以下代码...在class Trigger(object): def evaluate(self, story): ""& ...

  7. 中运量71路线路图_浦东临港的中运量呼之欲出:临港地区已经成为上海建设的热土...

    2020年,浦东临港的中运量已经呼之欲出,临港地区也已经成为上海建设的热土. 本文回顾浦东临港的地区的中运量,根据上海市临港地区开发建设管理委员会公布的<临港地区中运量公交专项规划>,临港 ...

  8. 计算机右键管理中没有用户管理,我的电脑右键菜单中没有管理选项如何解决? 我的电脑右键菜单中没有管理选项解决的方法有哪些?...

    今天给大家带来我的电脑右键菜单中没有管理选项如何解决?,我的电脑右键菜单中没有管理选项解决的方法有哪些?,让您轻松解决问题.         在操作电脑时,经常会使用系统工具,对系统进行设置或整理,如 ...

  9. IntelliJ IDEA 如何知道项目中的模块数据_如何从项目源中选择模块加入当前项目中(添加模块)_如何移除项目中的模块(移除模块/删除模块)

    文章目录 IDEA 如何获取项目的模块数据 从项目源中选择模块加入当前项目中 如何移除项目中的模块 方式一,选择模块的根目录(Content Root),鼠标右键 Remove 方式二,打开[项目结构 ...

最新文章

  1. LaTex排版技巧:[15]公式太长如何换行
  2. java面试题大合集(开发者必看一)
  3. JAVA配置Tomcat
  4. 超绝万圣节主题设计海报背景,搞节日气氛靠它没问题!
  5. 能发出调子的c语言程序,求关于单片机的电子琴C程序
  6. 目标检测(七)--Fast R-CNN
  7. 数据结构二叉树的建立代码_二叉树就是这么简单
  8. MariaDB学习记录
  9. 普林斯顿微积分读本篇十一:最优化和线性化
  10. [Java]利用itextpdf将多个多页的PDF合并为一个
  11. 我的世界联机侠java_我的世界联机侠手机版-我的世界联机侠下载-Minecraft中文分享站...
  12. 二维码上可以用精密光纤激光打标机打吗?
  13. 塑料颗粒行业调研报告 - 市场现状分析与发展前景预测
  14. php 获取搜索引擎,PHP获取搜索引擎关键词
  15. 【python与excel】
  16. 去掉wap端手机浏览器头部搜索栏和底部工具栏的方法
  17. IMT-2020(5G)推进组最新工作进展
  18. typeScript学习笔记day02——小肉包
  19. 用三个与非门设计或门两种方法
  20. 操作系统和进程的介绍

热门文章

  1. 判断屏幕宽高比是否为16:9
  2. 什么样的显卡能支持 4K 分辨率输出?
  3. Unity 3D学习视觉脚本无需编码即可创建高级游戏
  4. vim 成“神“之路 (一)
  5. C功底挑战Java菜鸟入门概念干货(一)
  6. 根据CPU核数合理设置线程池大小
  7. .Net Core MVC初学习
  8. how-to-cartoon-ify-an-image-programmatically
  9. Windows Phone 7编程学习点滴一——页面切换、返回键重载和工具栏
  10. 如何设置网页自动刷新(JSP,JS,HTML)