软件测试的几大误区
作者:网络转载 发布时间:[ 2012/8/13 13:22:58 ] 推荐标签:
我们暂且不去评析软件测试在当今it公司中的地位,只说大家对软件测试的认识。基于我短暂的经验,我总结出软件测试几个常见的误区,供大家研究:
一大误区:测试简单,对技术要求不高
这是对测试通常的评价,如果一个开发人员转做测试,那么别人通常认为,他是不是开发能力不够,或者是他是不是不愿意吃苦之类。我们先引用Google的 Patrick Copeland对一个卓越的测试员所应有品质的评论:
“那是心态与激情。从我所做过的100个访问来看, “卓越”可以被提炼为:1)一种发现问题的独特敏感性;以及2) 伴随这种敏感性产生的对于测试的激情。换句话说,他们喜欢测试而且善于做这件事。他们也明白测试带来的挑战往往等于或者大于编程所带来的挑战。一个拥有测试基因与正确态度的测试员总能找到工作。他们是金子。”
在我个人理解中,测试反而对技术要求更高。这里的“高”不是说一定多么精于某一门技术,而是需要更广的技术能力。比如简单的功能测试,我们需要需求分析能力和业务能力,当然还有相应的测试技术;进行白盒测试,我们需要拥有一定的代码阅读能力和编写能力;安全性测试,我们需要一定的网络安全知识和数据库分析能力等等。
二大误区:测试无聊
一件单调且无聊的事,作为测试的一个传闻,频繁见诸于主流媒体文章中,这些文章把测试者比作软件产业的装配线工人。而事实上,测试工作每天都呈现给我们新的令人兴奋的挑战。Michael Bolton(注:DevelopSense校长,Rapid Software Testing的作者之一)的一段精彩摘引很好的概括了这一点:
“测试是一件我们以寻找新信息为动机所做的事。测试是一个探索、发现、调查、学习的过程。当我们以评估,或者认知预料之外的问题为目的地配置、操作、和观察一个产品的时候,那么我们在测试。当我们尽力去寻找产品及其设计的程度和限制的时候,当我们被那些尚未回答甚至尚未问过的问题所驱使着的时候,我们在测试。”
三大误区:测试人员与开发人员很难相处
这个论调的提出貌似很有普遍性,而实际上我这几年的经验,无论做开发还是做测试,都没有与任何的同事产生难于相处的问题,反而都成了很要好的朋友。尽管测试与开发在工作性质上有着“形”的区别:开发人员是在构造项目,而测试人员是在破坏开发人员已构建好的项目;而实际上,本质并不冲突,都是为了项目的“成”和质量服务的。至少我认为在大部分公司中,这个论调是不成立的。
四大误区:总有,机器自动化将代替手工测试
这是业界很多人所津津乐道的话题,记得曾经去某个外包公司谈合作,其经理很得意的告诉我们他们的目标是未来以自动化取代手工测试,每个项目只需要一两个自动化测试工程师ok了。
当然,我不否认自动化测试的作用,甚至我自己也在津津乐道于测试框架开发等工作,但是自动化代替人工测试?恐怕我得说“NO”。不是难于实现,而是根本不可能。
软件的终使用者永远是人,所以只有人才能真正了解人的需求。例如用户体验,common sense等等,这是机器永远不能代替的。
测试自动化常被用来解决庞大的问题。因为要做的太多, 这庞大的范围使得自动化脆弱而不可靠。有些特定的事情自动化擅长而有些特定的事情人更擅长,这样看上去一个结合二者的方法也许更好. 我想要的是自动化使我的,作为一个人的,工作更加简单。自动化更擅长分析数据与注意模式。 它并不善于确定相关性和判断调用。 幸运的是人类擅长判断。
以上是我总结的几个误区,如果你还有其他补充的,那么欢迎留言讨论。
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11