《精通自动化测试框架设计》—第1章 1.5节冰山

1.5 冰山
伴随成功到来的,必然是更多的、全新的挑战。

1.5.1 假失败
首先遇到的是用例假失败(False Failure),也就是类似足球比赛中假摔的问题,或者因为非缺陷原因导致的自动化测试用例运行失败。一般大批量的测试运行开始于每个发布的若干个最早期的几个Sprint之后;这时候基本上已经达到100%通过率的测试用例。但在新版本上的通过率会有一个明显的降低,从上一版本的全部通过快速下降到60%甚至更低,然后就是一场艰苦卓绝的排错与根因分析的攻坚战,逐步又将通过率提升并稳定在95%左右,直至在最终发布前回到100%,并以此循环往复。

通过测算,发现一个典型的功能测试团队(如5~8个人)如果只配备一名全职的自动化测试工程师,那么他的时间基本都被排错的工作占据了。只能在两个发布的间隔期,也就是每季度有1~2个星期,这个团队才有时间和精力去增加他们的自动化测试用例。当然,这个速度是远远赶不上手工测试用例增加的速度的。很快,这种挫败感会降低实施自动化测试最初给团队所带来的乐观与兴奋。如果不及时应对,甚至会动摇管理层对于自动化测试持续投资的信心。

1.5.2 低优先级的自动化Backlog
随着新特性的开发需求量的饱满,导致许多产品经理(PO)不得不去安抚客户耐心等待。而忙碌的SCRUM团队的一个正常的举动,就是Sprint计划会有意识地降低对于属于“技术债”的自动化Backlog的选取率,集中精力去完成产品开发的工作。

1.5.3 破窗与“造轮子”
当一个自动化测试框架的缺陷从被报告到它的修复经常超过一个月的时间,这自然而然就引发了破窗效应。类似的这种行为很快从个人蔓延到整个组织,由此带来的后果就是许多以前尝试利用Selenium作为他们Sprint自动化测试一部分的开发团队,率先放弃了这一测试方式,并重新回到了不测试或者只有少量API/单元测试的时代。

An君和其他投身于自动化的测试工程师一样,无奈选择了加入再“造轮子”的行列。这一行为也导致了在用例中植入了许多原本属于框架部分的Selenium代码。

如果有机会回过头去看那一时期的自动化测试框架的缺陷,很有意思的一个现象就是,经常有些缺陷的描述信息或者附件里面包含了测试人员提供的如何修复该缺陷的 Java 代码,甚至是一个完整的重构的类。

时间: 2024-09-20 21:24:15

《精通自动化测试框架设计》—第1章 1.5节冰山的相关文章

《精通自动化测试框架设计》—第2章 2.1节简介

第2章 测试数据管理精通自动化测试框架设计2.1 简介在本章中将结合案例介绍各种数据管理与交互的方法.那么问题来了,作为一本介绍架构自动化测试框架的书籍,为什么首先要介绍数据管理呢? 正所谓兵马未动,粮草先行.自动化测试也建议数据先行.测试过程中所涉及的被测应用自身.测试用例.测试报告等,都需要各种不同类型的数据进行支撑.一般来讲,所谓软件产品的功能,就是该产品在某一上下文状态下,将一系列的输入数据处理以后,转换成相应的输出数据.而软件测试,也就是通过模拟数据来触发这些功能的过程.因此,在软件测

《精通自动化测试框架设计》目录—导读

作者简介 精通自动化测试框架设计 陈冬严,浙江大学硕士,具有10年软件测试和团队管理的工作经验,先后服务于ITSM.PLM软件研发企业,现就职于某金融行业核心机构IT规划部门.业余时间喜欢园艺. 邵杰明,热爱测试工作,10多年的测试行业经验,曾先后供职于多家世界一流软件公司担任测试开发和测试管理工作,积累了丰富的行业工作经验,拥有PMP认证,目前担任测试架构师的工作,致力于自动化测试设计.持续交付等方面的工作. 王东刚,常用网名fastpoint,资深测试专家,<软件测试与Junit实践>作者

《精通自动化测试框架设计》—第1章 1.2节史前的自动化

1.2 史前的自动化 自动化测试不等于UI自动化测试,也不仅仅是完成测试用例的自动化翻译和执行过程.本节将介绍一些过往的自动化实践,供读者在自动化测试框架设计或者选型时进行参考. 1.2.1 自动化安装系统 该SUT是一套典型的B/S架构的基于J2EE的产品,安装过程中至少有20个GUI页面,需要不停地填写和勾选相关的配置信息.最令人头痛的是需要填写大约50个端口号.当然,后续的版本上这个问题已经改善许多.开发环境中,还要考虑一台服务器上部署多套系统,手工安装时选择端口号几乎成了最痛苦的事情,就

《精通自动化测试框架设计》—第1章 1.6节再启航

1.6 再启航尽管面临这样或者那样的问题,一些测试团队仍然成功获得了开发团队的信任,建立起了双方每周对话的机制,在周例会上沟通彼此遇到的技术问题,并决定自动化测试任务的优先级.也有些测试团队的成员,开始代替开发人员着手修复或者新建框架中的类,并提交代码进代码库而不再只作为缺陷描述中的补充.这样做所取得的直接效果就是降低了与自动化测试框架相关的缺陷的修复时间. 在测试组织内部,也通过这两年的锻炼,吸引了一些熟练掌握框架API并且熟悉产品知识的自动化测试人员,他们通过BCO牵头,成立了一个虚拟的自动

《精通自动化测试框架设计》—第2章 2.5节使用Exce

2.5 使用Excel2.5.1 经典的DataTable 在图2.2所示的调查中,Excel作为排名第一的数据源是情理之中的.甚至可以说,应该找不出来没有使用过Excel表格进行数据处理的读者.Excel的易用性.强大的数据处理功能,也能让即使不会编程的使用者可以快速解决一些常用的数据统计.计算的问题.在早期的商业自动化测试工具中,数据驱动或者关键字驱动是作为一个卖点被广为宣传的亮点.接触过这些工具的读者估计都对DataTable之类的概念印象深刻.在那个假设"系统测试工程师不懂代码"

《精通自动化测试框架设计》—第2章 2.6节使用数据库

2.6 使用数据库 如果读者所在的企业正在招聘测试工程师或者读者正在求职,翻开工作说明书,无论是熟悉.掌握还是精通,估计绝大部分都会对于数据库有一定的要求.这说明了数据库在现在软件行业的普遍应用,也说明了这几乎是自动化测试所绕不开的一个技术点.在本小节中,将简要介绍如何通过编写代码与数据库进行交互.当然,这只是浅显的使用层面的介绍.如果牵涉到多套数据库数据配套不同用例集.基础数据导入以及数据清洗等问题,读者可以参考第1章中有关"快速回归测试系统"的介绍,以及下一小节中有关CSV文件的处

《精通自动化测试框架设计》—第2章 2.2节测试数据分类

2.2 测试数据分类据James Whittaker在他划时代的<探索式软件测试>一书中的介绍,软件测试人员在制定测试策略时需要关注以下5个部分,包括输入(input).状态(state).代码路径(code path).用户数据(user data)和执行环境(execution environment).在资源有限的情况下,完整解决这其中的哪怕一个问题都是不可能的.因此,需要测试人员时时做出测试决策.作为一个测试框架架构人员,也必然需要面临这些问题,解决测试人员在面对前述这些问题时所提出的

《精通自动化测试框架设计》—第1章 1.1节奥运年的新挑战

你多吃点饭,到东吴的路很长,很费体力. --<赤壁> 第1部分 构建UI自动化框架在本书的这一部分,将介绍数据管理.底层公共框架构建等主题,并借助TestLink Web UI自动化测试框架构建的实践案例来展示如何从底层框架开始,搭建一个具有良好可维护性以及后续可扩展性的Web UI自动化框架. 1.1 奥运年的新挑战2008年的夏天是一个举国欢腾的日子.An君在办公室里正对着"厨房三件套"的Office开始一段全新的奇妙旅程. An君加入的团队是P公司上海研发中心组建的第

《精通自动化测试框架设计》—第2章 2.7节使用CSV文件

2.7 使用CSV文件 CSV[1]的全称是Comma Separate Values,即以逗号为分隔符,每条记录占一行的一种文件格式.当然分隔符并不限制于逗号,因此其另一个名字叫做Character Separated Values.这种古老的文件格式早在20世纪60年代就已出现,被使用于IBM OS360上,远早于个人电脑时代的来临.时至今日,CSV文件依然顽强并且广泛地使用着,特别是在程序间交换数据的场合.例如,在某些ERP系统中,作为安装的一部分,在完成了二进制可执行文件的安装之后,需要