软件测试的两种未来
作者:测试窝转载 发布时间:[ 2012/7/4 9:40:19 ] 推荐标签:
原名:Two Features of Software Testing
原文大家可以到网上找找,版本不太一样,和写作年限有关,我下的版本是51testing上的。
很多人比较关心测试这一行的发展趋势,我也一样。文章风格是ppt风格的,多是概要和大纲。仁者见仁,智者见智!我尝试翻译一下,水平有限,望大家指正:
-----------------------------------------------华丽的分割线-----------------------------------------------
软件测试的两种未来
这些不是预言。
这些是建议。
这里不是仅仅在说两种未来。内容供你参考。而选择在你。
黑暗未来:
测试人员的角色是为了阻止变更
没有什么比严格遵守我们的计划和流程更重要
如果我们的客户想要变更,我们会指责他们“有违质量”
在黑暗未来,测试人员的角色-请原谅我,质量保障分析师-是为了阻止变更。我们原本相信对产品和项目足够了解,但是变更使得这件事可能不再有效,于是变更引入了风险。所以即使客户需求、市场条件、日程、预算、产品范围、团队以及项目以外的任何事情可能发生了变化,我们仍然坚持原有的过程,坚决按计划行事。即使我们在研发产品的过程中不断学到一些新的东西,也不要影响计划;我们应该在事先了解那些事情。我们的责任不仅仅是告知,我们还必须死板的执行。
黑暗未来
像流水线一样测试
在黑暗未来,ISO标准29119会告诉我们需要测试什么以及如何测试。“无论你做的是哪种类型的测试,它都会影响你。”即使起草标准的人不知道你的业务也没关系嘛;因为他们是“专家”,他们知道什么方式是好的方式,比你更知道。“标准使用了四层过程模型,开始有两个层覆盖测试策略和测试战略。下一层转向项目管理,后一层为所有测试级别定义了基础测试过程,比如单元测试,系统测试,验收测试,以及测试类型(例如性能和可用性测试)。第2和3部分,与过程和文档相关,特别与测试过程潜在的所有输出紧密关联,相当于文档部分定义的文档。同时建议使用‘新工作项目’,这个将在测试过程改进中看到第五部分内容-假设一个测试产业每隔数十年没有出现其他新的测试改进模型。”是不是听起来很不错?他们不仅仅告诉你如何去做,还包括如何改进-而不顾广为人知的警告,“可能大的抱怨来源于IT标准不能满足实际从业者的需求-我们中的很多人都会遇到这种‘空文’”。也不要担心标准难以管理,当前标准的第2部分草稿,是在编写的这部分,“仅”100页。
注意和标准相关的还有标准的术语表。术语表用英语。将它翻译成其他语言会增加复杂度和模糊性。让我们所有人仅仅用英语测试吧。如果其他文化不喜欢。。。好吧,有点困难。反正也没多少从他们那需要学习的东西。
黑暗未来
推进正统教育
所有测试人员必须通过多个容易通过的考试的认证
反正测试不是真正需要专业技能
每个测试产业的从业者使用同样的语言,并且按同样的标准测
在黑暗未来,评估测试人员的能力是基于记忆权威知识体系中测试术语的能力。上下文环境和理解说明在黑暗未来没有容身之处。考试总是需要的,这样便于考认证,所以有多个认证的选择也是必须的。如果担心这种方法不足以评估技能,不用担心:测试反正不是一个特别需要经验的行业。一些测试人员能够编写代码让工作自动化,这个是一个好主意,因为无论从什么角度看测试总是一个枯燥、重复以及单调的任务。
我们不希望测试人员和开发人员(即程序员-程序员仅仅指黑暗未来里的开发人员)亲近。测试人员会意志薄弱以至于受到程序员负面的影响,所以这种亲近会危害测试人员的目标。测试人员可能会被诱导不要报bug。
重复在黑暗未来中是非常重要的。我们想要一遍又一遍的跑同样的测试,没有变化,因为变化可能导致不可预测性。发现和研究bug会让我们脱离原定计划
黑暗未来
测试和学习无关
测试关注证实、验证和确认
测试人员检查确认规定的测试通过
探索和研究,往好处说是品,往坏处说是危险
在黑暗未来,测试是持续不断的例行任务,机械化的活动,即使它们是由人完成的。它和学习无关,和确认我们已知的事情有关,回答我们知道答案的问题,重复一遍又一遍同样的无脑测试。在黑暗未来,没有探索、研究或发现、学习的地方,也是没有技能、创造性和想象力生长的舞台。也没有询问客户如何评估我们产品的空间。我们只是做我们被告知的,我们不学习任何东西。
黑暗未来
测试被简化为无脑的检查
“有脑”意味着“需要人类智慧”
一个“无脑”的活动可以:
被不能思考的机器执行(但是迅速并且精确);或者被封闭思考的人类来执行(慢并且不可靠)
黑暗未来
测试人员负责制
项目管理不够成熟,不能做出合适的决定
在黑暗未来,测试人员是质量的看门人。我们决定何时开始测试,仅仅当产品和相关文档按严格标准提供时,以及当我们收到完整的、无歧义的、新的需求文档时,我们开始测试。我们决定产品质量是否达到发布的要求。管理者必须得到我们的签名和我们的允许,才能发布一个合格的产品。我们能够中止发布,如果我们认为产品不够好。当然我们自己不需要遵守这些标准,那不是我们的工作。在黑暗未来,我们的角色是告诉其他人他们什么做错了以及如何改正。在黑暗未来,测试人员是真正的项目管理者。
黑暗未来
测试人员负责制
测试人员不能控制日程、预算、产品 、团队、合约等等,但是我们仍然对质量负责。
黑暗未来
测量
我们测量
需求范围,通过统计需求文档数
测试覆盖率,通过统计测试用例数
产品质量,通过统计bug数
测试人员价值,通过统计bug报告的数量
程序员的产出,通过统计代码行数
复杂度,通过统计代码分支数
属性各个值之间的相关性不重要
如此简单,小孩子也能做
需求文档、生产率、复杂度、测试覆盖率、产品质量以及测试人员价值与我们看到的成百上千的因素有关。然而大部分因素并不能明确的量化,过分简化的统计只能是误入歧途。在黑暗未来,我们解决问题的办法是忽略他们。
一个bug并不是这个世界上的普通的一件事情。一个bug是结构化、充分思考的精神产物。它是特定人和特定产品之间的关系,比如其他的人可能不会把它视之为bug。甚至当两个或更多人认为部分行为似乎一个bug时。他们也可能不同意这是个明显的bug。尽管如此,在黑暗未来,我们会统计它们。越多的bug意味着越高的质量;越少的bug意味着越低的质量。这对测试人员同样适用。我们会忽略所有测试人员带给项目的其他活动和维度的价值,通过统计他们bug报告的数量来测量他们的工作效率。
在黑暗未来,我们不会做定性的测量、做第一手的观察、看测试人员和开发人员的交流,或者和实际用户进行沟通。我们不相信故事,只相信统计。然而我们不会担心测量方法中的合理性或其他可能的问题。我们只是简单的使用方法,比如应该对每个需求文档有一个可追溯的测试用例。不,等等!应该是两个!一个正向测试用例和一个负向测试用例。
Cem Kaner说过一个测试用例是我们想要问这个产品的一个问题。James Bach也多次说过,一个测试用例是一个问题的容器。在黑暗未来,我们评估工作质量,是坐在办公室里,统计每天早上进进出出的公文数量。我们不去考虑看一下其中的内容。如果公文的数量越多,那显而易见的表示公司的工作效率在提升。
我们忽略简单统计背后隐藏的问题,回避Cem Kaner和Pat Bond所著的Software Engineering Metrics:What Do They Measure and How Do We Know?(http://www.kaner.com/pdfs/metrics2004.pdf); Darrell Huff 经典的How To Lie With Statistics; Gerald M. Weinberg所著的Quality Software Management, Vol. 2: First Order Metrics ; 尤其是Robert D. Austin所著的Measuring and Managing Performance in Organizations。爱因斯坦曾经说过“不是所有有价值的都能被计算,不是所有能计算的都有价值”。我们当然也忽略了他。
糟糕的事情是黑暗未来
和很像
在黑暗未来,在项目管理比较便于测试人员操作时,他们会在幕后驱动整个项目。即使测试人员明显没有什么权力,他们仍然对所有质量过失负责。因为他们是代码后的经手人,于是看上去任何没有被检测到的问题都是他们的过失。测试人员必须签署文档来决定产品是否可以发布,即使产品的发布是一个商业层面的决定,而不是技术层面的。
在黑暗未来,所有产品的失败被视为测试失败。没有人承认问题是整个研发团队的问题。阅读每天的报纸,你会发现一个又一个问题被贴上了糟糕测试的标签。不是糟糕的编程,不是糟糕的项目管理,不是糟糕的产品理念,不是糟糕的产品需求。一个通行的观点是,产品问题是测试问题,不多,不少;在这个观点下,如果软件研发是一场球赛,比赛输掉的所有责任都在守门员。
相关推荐
最新发布
性能测试之测试环境搭建的方法
2020/7/21 15:39:32软件测试是从什么时候开始被企业所重视的呢?
2020/7/17 9:09:11Android自动化测试框架有哪些?有什么用途?
2020/7/17 9:03:50什么样的项目适合做自动化?自动化测试人员应具备怎样的能力?
2020/7/17 8:57:06几大市面主流性能测试工具测评
2020/7/17 8:52:11RPA机器人能够快速响应企业需求,是怎么做到的?
2020/7/17 8:48:05Bug可以真正消灭吗?为什么?
2020/7/17 8:43:03软件测试基本概念是怎么来的?软件测试生命周期的形成历经了什么?
2020/7/16 9:11:10