BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

优秀的开发人员和测试人员应有的态度

| 作者 张卫滨 关注  他的粉丝 发布于 2014年1月8日. 估计阅读时间: 5 分钟 | QCon上海2018 关注大数据平台技术选型、搭建、系统迁移和优化的经验。

Rajaraman Raghuraman是一位具有丰富经验的软件软件从业者,是AgileDevTest博客(http://agiledevtest.blogspot.com)网站的站长,以及电子书《Programmer's Motivation for Beginners》的作者。针对优秀的软件开发人员和测试人员应该具有什么样的职业态度,他专门撰文进行了阐述。

针对软件开发人员的文章中,Raghuraman认为软件开发是一种艺术,而不是一门科学。你可以学习软件开发的各种技术,不过还需要对编码有着充分的热情。如果你是这样的人,那么就可以成为“伟大的开发者”。Raghuraman列出了优秀的开发人员应该具有的态度:

态度1:缺陷表明我编写优秀代码的能力出现了问题

修改缺陷是软件开发人员的日常活动。显然,缺陷是开发人员最大的敌人。当修改缺陷的时候,又有多少人能想到以下几点呢:

  • 起初的时候,我能做些什么来避免这个缺陷呢?
  • 我怎么能让这个缺陷逃过我的眼睛呢?
  • 好了,既然问题已经产生了。我下次该如何避免相同的错误呢?下一步该做些什么呢?

事实上,很少有开发人员这么想。

愿意成为优秀开发者的人应该将缺陷视为其位置的一种威胁、个人可信性的一种威胁以及编程技巧的一种威胁。正是这种态度能够使其成为伟大的开发者。

态度2:测试人员,有本事就在我的代码中发现缺陷

有多少人具有这样的态度呢?很多开发人员认为测试的任务就是发现缺陷。的确如此,但是这并不意味着开发人员就可以将缺陷视为理所应当的事情。优秀的开发者愿意邀请测试人员在他的代码中寻找缺陷。他们对自己的代码有这样的自信。

态度3:在代码质量问题上不妥协

对于开发者来说,最重要的事情就是代码质量了。这包括正确的编码标准、使用恰当的设计和重构保证代码更加可维护等等。但是,我们通常会因为一些众所周时的原因在代码质量问题上妥协,比如面临时间和进度的压力。优秀的开发者永远不应该在代码质量上妥协,不管所面临问题是什么。

态度4:自信但不傲慢

优秀的开发者应该对自己的能力有自信,但是不应该对其他开发人员和测试人员傲慢。他应该始终记住他是团队中的一员,这个团队要准时高质量地完成项目的共同目标。

态度5:感激测试人员

尽管优秀的开发人员工作非常努力认真,但是测试人员依然可能在他的代码中发现缺陷。如果这样的话,感谢这些优秀的测试人员。优秀的开发人员应该感谢测试人员所发现的缺陷。他应该记住这一点,他的敌人是缺陷,而不是做测试的人。

针对软件测试人员的文章中,Raghuraman认为开发人员和测试人员的工作方向正好相反,但是有着共同的目标,那就是生产高质量的软件。他认为优秀的测试人员应该具有如下的态度:

态度1:我要不惜一切代价破坏软件

不要产生误解!测试人员的工作就是要发现缺陷,在这个过程中,要随着时间的推移,使软件变得越来越好。缺陷是测试人员的好朋友,因此他最重要的事情就是不惜一切代价破坏软件,发现漏洞。这个过程中,可以系统性地执行测试用例,也可以进行临时测试或探索性测试。

如果你想成为优秀的测试人员,那么你的态度应该是“不惜任何代价破坏软件并查找缺陷”。

态度2:优秀的开发人员,我一定要在你的代码中找到缺陷

不知道有多少测试人员能有这样的态度?

但是如果想成为优秀的测试人员,就需要有这样的态度:不管开发人员多优秀,也要努力在他的代码中找到缺陷。

态度3:在测试质量问题上不要妥协

就像代码质量一样,测试也需要高质量。优秀的测试人员不应该在测试质量上做任何的妥协。

态度4:感激开发人员

有可能优秀的开发人员编写的代码不包含任何缺陷。难以置信吧?如果是这样的话,那就感谢开发人员吧。

如果开发人员所编写的代码没有缺陷,优秀的测试人员应该感谢并尊重他们。应该记住这一点,他的朋友不仅仅是缺陷,开发人员也应该是他的朋友。

态度5:我绝不比开发人员差

在测试领域,是不是有很多人觉得比开发人员低一等?相信有很多这样的人。如果测试人员觉得比开发人员低一等的话,那么他实际上并没有恰当地做好测试工作。正如前面所述,开发人员和测试人员工作方向相反,但是有着共同的目标,那就是生产高质量的软件。

如果你想成为优秀的测试人员,那应该首先为自己的工作感到骄傲,不要觉得低人一等。

态度6:要比开发人员懂得更多

有多少测试人员在技术和架构方面懂得比开发人员还多呢?可能并不太多吧。作为测试人员,工作内容不应当仅仅是编写和执行测试用例并报告缺陷。他应该在技术上比开发人员了解得更多,只有这样才能知道在什么地方能够破坏软件并找到缺陷。

优秀的开发人员和测试人员除了高超的技术技能外,还都具备专业的职业态度,希望Raghuraman的总结对您有所帮助。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

优秀的开发人员应该把测试也写了。 by 翟 志军

优秀的开发人员应该把测试也写了。

Re: 优秀的开发人员应该把测试也写了。 by liang phoebus

优秀的意义不代表是什么都要做啊,开发人员能为整个产品/项目的交付负责就很不错了,要求他写单元测试,有的时候不骂娘才怪,谁都知道该做什么,但未必谁都会做

Re: 优秀的开发人员应该把测试也写了。 by Wong Peter

优秀的测试人员应该把开发也做了。

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

3 讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT