“测试人员”与“开发人员”的视角差异

测试人员和开发人员的目标是相同的,即向利益相关者提供高质量的产品。但他们的思维方式不同。

正确的说法是,“测试人员和开发人员没有什么不同,但他们遵循不同的途径来实现相同的目标”。

开发人员认为:“我怎样才能提出申请呢?”

测试人员认为:“我怎样才能破解这个申请呢?”

测试人员和开发人员的行为就像猫和和老鼠。但最终的结果只有当他们一起工作时才是积极的。

说“如何破坏应用程序”并不意味着测试人员的座右铭是破坏开发人员所做的工作。这意味着测试人员开箱即用的思维并通过设身处地为顾客着想,在应用程序上应用所有可能的方案。这样做是为了使应用程序在活动环境中不会中断。

对于任何软件应用程序的开发,软件开发生命周期(SDLC)都扮演着重要的角色。之前,软件测试是在开发的最后阶段进行的。但是,在最后阶段修复错误/错误证明是非常困难和昂贵的。

因此,为了避免这种复杂性,现在,软件测试是SDLC每个阶段的一部分。这意味着测试从开发的第一阶段开始。

SDLC

“测试人员”从不同的创造性角度来看待应用程序,如果最终用户的需求得到了明确的理解,那么它就会产生很大的不同。

让我们在SDLC的不同阶段查看并简要了解测试人员的观点:
1)需求收集和分析:

在此阶段,根据涉众的要求,并通过积累应用程序的适当需求,编写需求文档。

需求文档将与测试团队共享,以便他们对建议的需求有自己的看法,并以“ReviewComments”的形式发送他们的查询。查询可以是任何内容,无论是对任何特定部分的理解,还是对未来可能出现的错误的预测。

让我们把常见的例子:最终用户的要求是“输入字段不允许特殊字符”。

开发人员的作用:显然,通过检查用户输入任何特殊字符时,会抛出错误或显示正确的错误消息,编写用于插入输入字段的代码。

测试人员的观点:测试人员将首先检查所述的需求,但随后他将考虑多个场景。他会有这样的问题:

如果输入框中只包含特殊字符,怎么办?它会向用户显示相同或不同的消息吗?
如果用户将特殊字符和字母数字字符的任何组合复制并粘贴到输入框中怎么办?
还有许多其他类似的场景,测试人员在检查时会考虑到这些场景。需求文件.

对于评估任何产品或应用程序,测试意味着对产品进行质疑,以涵盖几乎所有的场景,因为最终用户可以是任何人,并且可以他们想要的任何方式使用应用程序。

2)系统/应用程序设计:

在收集数据和最终确定需求之后,开发商开始在应用程序上进行设计。这包括在开发人员实现之前对设计文档进行审查。

测试员通过他们的理解和创造性思考,分析所有新特性、增强、集成、UI更新,以及需求中提到的所有可能的场景。它们创建测试用例、健全检查列表和数据,以便当应用程序进行测试时,它们已经准备好了它们的测试参数。

#3)执行阶段:

在这个阶段,开发人员实际上实现了最终的系统设计。

当我们从开发者视角,它们的重点是构建功能,这是所需的。在他们看来,功能将完美而高效地工作。

但当我们看到测试者视角,它与开发人员的正好相反。当开发人员专注于实现该功能时,测试人员应用他们所有的创造力来测试该功能。还有一种情况是,开发人员误解了需求,在这种情况下,当测试人员应用他们的场景时,应用程序就会失败。

#4)系统测试:

在此阶段,开发人员将应用程序上载到分期/质量保证环境(可供测试人员测试的环境)具有由开发人员在特定sprint/版本中实现的一组已定义的功能。

开发商上传应用程序的概念是,实现的功能按照指定的需求完美地开发;他们只是将应用程序提供给测试人员重新验证。

但对于测试人员除了所需的功能之外,最终用户还可以考虑使用特定应用程序的其他许多不同的方式。测试人员的任务是运用他们的创造性思维和探索每一个可能的场景。

#5)维护阶段:

这个阶段是检查测试人员和开发人员的共同努力。

所有实现之后的最终应用程序被发送给用户使用它。如果它按预期工作,那么就没有问题了。但是,如果有任何偏差,它再次需要测试人员和开发人员在维护阶段的共同努力。

测试人员和开发人员共同组成一个有效的团队。因为确保最好的产品是双方的责任。如果两者都与正确的理解和积极的反馈一起工作,这是实现的。

让我们看看定义测试人员和开发人员角色的一些重要要点:
虽然开发人员应该确保他们开发的内容中没有bug,但是测试人员应该确保如果存在bug,就应该报告这些错误,并在正确的时间进行修复。
开发人员应该以积极和建设性的方式接受测试人员的反馈。
必须说,开发人员是某一特定技术领域的“专家”,他们可以根据需求使用他们的所有技术技能来开发项目。测试人员是第三方(假设是应用程序的虚拟用户),他们以有效的方式报告错误或错误,从而确定应用程序的质量并确定需要改进的地方。

作为一名测试员工作:
当然,有许多优秀的开发人员能够很好地测试。重要的一点是,作为一个人,我们不能单独测试我们的东西/应用程序,我们确实需要第二个人的意见和反馈。

“测试者”是不受开发的应用程序影响的人,他根据在所有可能的情况下使用应用程序的实际经验作出自己的判断。

好的测试器知道用户在学习和使用新产品时会犯很多错误。实时用户喜欢通过尝试和查看所发生的事情来学习使用新产品,而不是阅读手册。

所以测试器的主要焦点是“什么会出错”。。开发人员的主要重点是根据需求交付项目。

一个好的测试者和一个好的开发人员:
好的测试器是一个能适应冲突的人。很多次它变得非常很难找出错误的来源也就是说,它可能是编码错误、文档错误、设计错误,甚至可能不是bug。但是测试人员的职责是报告每一个错误。

好的开发人员是以积极和建设性的方式接受反馈,诊断问题并对其进行调试的人。但是开发人员经常避免冲突,这会造成障碍。

结论:
因此,我在结束我的文章时说,理解差异对于富有成效的团队至关重要,但不同的方法有助于找到解决方案,并导致交付最佳工作的产品。

每个人都在做自己的工作。开发人员在那里开发应用程序。测试人员在那里测试应用程序。

原文地址:http://blog.51cto.com/13879140/2153188

时间: 2024-10-21 19:00:35

“测试人员”与“开发人员”的视角差异的相关文章

测试人员和开发人员如何更高效的配合工作

一.对开发人员的建议: 控制版本/补丁发布频率(重要) a) 版本交付间隔保证在2个工作日以上,尽量避免出现版本/补丁频繁交付导致的测试不充分. b) 控制版本补丁数量,原则上除紧急补丁外,多个补丁合并发送.这样可以让测试人员对交付版本提供一个更准确的质量状况. 版本能按计划交付(重要) a) 根据青铜器上填写的版本交付计划或者约定的交付日期进行版本交付. 明确每个版本的送测内容(重要) a) 含故障单.缺陷编号.具体功能修改等,避免出现模糊描述:如修改了用户管理模块--应描述修改的具体内容.

漫谈测试人员和开发人员关系

此文已由作者夏君授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 从事软件测试已有多年,参与过很多项目,合作开发不少,谈起测试和开发的关系,说起来比较微妙,有时候能和睦相处,有时候矛盾重重.其实矛盾的根源,无非就是BUG,但起源于BUG,也终止于BUG. 首先,来看看在整个软件产品的生命周期中,开发和测试人员对应不同的阶段对应不同的工作职责,如图所示: 从上图可以看出,测试和开发的工作范畴不一样,对于流程及业务多少会有理解偏差,所以合作上存在矛盾是无可避免的.相信即使针对

开发人员与测试人员的那些事

关于开发人员和测试人员的关系,人们阐述了很多,讨论了很多,争论了很多.而貌似一旦这两者坐在一起,对峙便开始了,两者间的争论多于相互认同.显然,这不利于实现两者合作的目标——向用户提供价值.(推荐学习零基础学习软件测试基础篇) 下面我们来分析一下其中的原因: 史前时期 在最开始,不存在测试人员, 只有开发人员.软件开发人员和软件项目的其他人员比起来并没有特别大的不同.从经济角度考虑,专门成立测试人员是行不通的:开发软件的时间如此昂贵,为测试人员分配时间显得很浪费. 没有专门人员检查工作,软件开发人

如何有效地与开发人员一起工作(七)

选择一个有效的角色 在这一节,我首先描述一下我喜欢的角色和这个角色的日常工作.然后描述这个角色解决的问题,最重要的是,可能产生的新问题. 假设你被告知要测试某个开发人员的工作,也许是增加了一个新特性到产品中.你也许要同时测试多个开发人员的程序,但是我会在后面的章节覆盖这些复杂的情况.我假设你会在编码阶段开始工作:在开发人员开始写第一行代码后,但在它被完成之前(除了修改bug的情况外).如果你在更早的阶段介入,那会更好,但是我不假设那种情况.如果你在代码完成后才开始进入你的工作,那么这个章节的作用

18个最棒的HTML5工具让Web开发人员保持领先地位

HTML5是一种非常有利的工具对于网页设计师和开发人员来讲,因为它的神奇功能可以协助和支持开发人员在自己的网站在线的展示真正的现代语言,这些工具的web设计人员和开发人员可以让网站管理员集成音频.视频.图片.字体.动画等在您的web页面.另一个好处是,兼容HTML5的工具可以提供给旧网站(无论是HTML或HTML4)最好的设计.为了获得好处和遵守最新的设计,这里有18个最棒的HTML5工具,让所有的网页设计师和开发人员都可以利用它们来保持领先和最新. 1. Adobe边缘动画 2. Patter

如何有效地与开发人员一起工作(二)

现在什么问题变小了? 为什么我要这么麻烦呢?看起来我是想去巴结一些朋友.朋友是好的,但是公司不会为我的社交生活付钱.公司给我报酬是让我使用一部分权力来达到某些目的,一种减少问题的方法.什么问题? 一般而言,摩擦. 我遵照John Daly的原则,不断地问自己:“我做测试不是找bug是做什么?”摩擦会减缓进度.开发人员和测试人员的一些典型摩擦浪费的时间其实可以更好地用在找bug上. 我的这种方法还帮助解决其它的问题. 找Bug的成本高.找得太迟. 如果一个bug能尽早发现,总是会比等到开发人员已经

如何有效地与开发人员一起工作(五)

测试人员则会对程序员的自我形象造成威胁,他们会打击程序员的那些特征.他们会展示给人们看到那些抽象概念没有用,细节没有被掌握好,或者是问题还没被解决.这一点也不奇怪,然后,程序员往往会把测试员的注意力从那些基础的概念转移出去,把它看成是对他们写的代码的系统的探索,寻找代码错误.代码错误不是什么大问题.一个对代码错误不重视的程序员可能会失去一些威望,但是仍然可能会被认为是优秀的.程序员可能从来不制造代码错误,但是创建笨拙的抽象概念. 现在,对于测试人员而言,寻找代码错误只是工作的一小部分.概念上的错

IE8“开发人员工具”(上)

认识"开发人员工具" 开发人员工具在IE8的工具菜单下,或者直接点击F12快捷键也可以呼叫出来. 提供一系列的小工具,让你可以方便的查找页面的bug,包括html代码.css代码和JavaScript代码. [文件]菜单 [全部撤销] 以前在开发人员工具中进行的操作全部取消,并且刷新页面和DOM结构. [自定义Internet Explorer试图源] [试图源]通俗的说法就是:"用什么编辑器查看网页源文件". [退出] 嗯,F12是个奇偶快捷键. [查找]菜单 [

Unity3D游戏开发之自由视角状态下的角色控制(二)

在测试Unity3D游戏开发之自由视角状态下的角色控制这个项目的时候意外地发现了一个Bug.Bug出现在如下位置: [csharp] view plaincopyprint? //设置玩家跟随角度 if(Target.GetComponent<NoLockiVew_Player>().State==NoLockiVew_Player.PlayerState.Walk) { Target.rotation=Quaternion.Euler(new Vector3(0,mX,0)); } 该方法主