关于软件测试的5个误传
|
admin
2012年7月21日 15:41
本文热度 2968
|
综观现今软件测试的一些轶事, 我对某些错误想法的频繁出现感到吃惊。尽管有很多可以罗列,但是我还是想分享测试的五个最常见的误传(基于我短暂的经验)。我发现前三个盛行于一些主流的新闻文章,而后两个则在科技领域的各个方面普遍存在。
误传1:测试无聊
曾有人说:”测试就像性。如果它不好玩,那就是你做的不对“。一件单调且无聊的事,作为测试的一个传闻,频繁见诸于主流媒体文章中,这些文章把测试者比作软件产业的装配线工人。而事实上,测试工作每天都呈现给我们新的令人兴奋的挑战。Michael Bolton(译者注:DevelopSense校长,Rapid Software Testing的作者之一)的一段精彩摘引很好的概括了这一点:
“测试是一件我们以寻找新信息为动机所做的事。测试是一个探索、发现、调查、学习的过程。当我们以评估,或者认知预料之外的问题为目的地配置、操作、和观察一个产品的时候,那么我们在测试。当我们尽力去寻找产品及其设计的程度和限制的时候,当我们被那些尚未回答甚至尚未问过的问题所驱使着的时候,我们在测试。“
误传2:测试简单
因为一直以来用户每一天都会发现一些漏洞, 所以常常有人认为测试不会很难。而事实上, 测试是一件非常复杂而且并不适合常人的技术。 这是来自Google的 Patrick Copeland对一个卓越的测试员所应有品质的评论:
“那是心态与激情。从我所做过的100个访问来看, “卓越”可以被提炼为:1)一种发现问题的独特敏感性;以及2) 伴随这种敏感性产生的对于测试的激情。换句话说,他们喜欢测试而且善于做这件事。他们也明白测试带来的挑战往往等于或者大于编程所带来的挑战。一个拥有测试基因与正确态度的测试员总能找到工作。他们是金子。”
误传3:测试人员只寻找漏洞
是的,测试员确实寻找漏洞, 但那不是他们唯一的目的。 这是来自freesoftwaretesting.info的Ankur对于这个传闻的一个很好的简评:
”对于测试员角色的这种看法是非常狭隘而且对客户也没有好处。测试员系统,应用,或者被测产品方面的专家。与负责一个特定功能或者模块开发人员不同, 测试人员明白整个系统如何工作来达到客户目标。测试人员知道产品带来的附加值,环境对于生产效率的影响,以及发挥产品最大功效的最佳途径。”
误传4: 机器将会淘汰人工测试员
随着自动化技术的进步, 经常有人认为将来有一天计算机将会淘汰人工测试员。 然而因为一个应用的最终用户既不是机器人也不是机器, 而是大活人,所以按理说人工测试将一直扮演着重要的角色。 这是测试作家 James Whittaker对于人工测试重要性的看法:
“测试自动化常被用来解决庞大的问题。因为要做的太多, 这庞大的范围使得自动化脆弱而不可靠。有些特定的事情自动化擅长而有些特定的事情人更擅长,这样看上去一个结合二者的方法也许更好. 我想要的是自动化使我的,作为一个人的,工作更加简单。自动化更擅长分析数据与注意模式。 它并不善于确定相关性和判断调用。 幸运的是人类擅长判断。”
误传5:测试员与开发人员不好相处
不难看出这个传闻流传的原因。测试权威 James Bach曾经写道:”任何做了一些工作并且上交这些工作等待评判的人都将会觉得自身被评判。 这种感觉并不愉快。而且问题会被那些轻描淡写的声称这个或那个奈特(译者注:nit和nat均指信息伦单位“奈特”)都是个“故障”的测试人员复杂化,好像任何他们个人不喜欢的事都是每个人的质量问题。“
事实上不被大多数人所知的是许多测试人员曾经都是开发人员(而且反之亦然), 所以对于每个阵营面临的挑战都有相互的理解与了解。虽然并非所有的公司都是这样,但以我的经验来看,说大多数测试员与开发人员都不好相处是不对的。
该文章在 2012/7/21 15:41:24 编辑过