51Testing软件测试论坛

标题: 开发人员最欠缺哪些测试知识?(09-3-9)(获奖名单已公布) [打印本页]

作者: 默默巫    时间: 2009-3-9 10:40
标题: 开发人员最欠缺哪些测试知识?(09-3-9)(获奖名单已公布)
一些中小型的公司的开发人员技术不平均,管理不规范,经常会犯一些重复性的、低级
的错误,给测试人员的工作带来了很大的不便,浪费相当大一部分的时间做这些无意义
的测试。通过哪些方法能够尽可能少的杜绝这种情况的发生呢?或者如何对开发人员进
行培训及控制。

如果你也有问题想提出来和大家一起讨论,请点击此处>>
说不定下期讨论的问题就是由你提出的哦,请快快参与吧!




获奖名单
奖项获奖名单奖励答案链接
一等奖不是我,是风当当购物卡50元12#
二等奖vaguely300论坛积分9#
kuailederen2#



相关文章:

有时候,优秀的开发人员是被优秀的测试人员调教出来的

开发人员需要了解的测试

优秀的开发人员能否成为优秀的测试人员

更多内容请点击>>>
作者: kuailederen    时间: 2009-3-9 11:39
我喜欢标新立异,就跑题的说下自己的观点:
   1.其实不是开发人员了解测试,而是我们的领导不了解测试,强将无弱兵就是这个道理,如果领导很重视质量,那手下没人会轻视。
      
   2.一切工作都治标不治本,除了进行质量过程改进。让软件过程走上正规,并让所有相关利益者接受它并喜欢它。
   
   3.公司追逐利益无可厚非,请你分一点利益给劳动者,让他们用来学习,生活,成长。我敢肯定,不重视员工利益的公司,永远没希望做好。
   4.测试人员从提高自己的能力做起吧。如果你还是发现问题,就叫来开发确认的测试,你就没资格抱怨了,你本质工作都没做好。
   
   5.开发人员不需要有测试知识,他的工作就是开发,自己倒想想自己缺少那些测试知识。别再让开发去承担本来属于测试者的工作了,测试环境请自己搭建,发现问题请自己定位和调试,驱动程序请自己编写,测试工具请自己开发,请自己去看技术文档,寻找测试点吧。
   
   6.想想自己,测试理论全面吗?测试技术全面吗?测试工具全面吗?编程能力够格吗?质量意识敏感吗?解决问题的能力够强吗?

[ 本帖最后由 kuailederen 于 2009-3-17 10:35 编辑 ]
作者: 阿七    时间: 2009-3-9 15:21
标题: 答...
开发人员最欠缺的测试知识应该分为2大块.一是技术上的,一个是思想上的.


技术上的有:

1
测试理论

2
测试流程

3
测试计划安排

4
测试工具的使用

5
测试的思路不够发散,比较专注



思想上的存在误区:

1
需求-实现-测试,软件测试是开发后期的一个阶段;

2软件测试对技术要求不高,至少比编程容易得多。

3
使用测试工具,就是进行了有效的测试

4
自动化测试是万能的。

5有时间就多测,没有时间就少测。

6存在太多的无法测试的东西

7
测试是枯燥无味的,是缺乏创造力的。

8
测试只要证明软件正确就可以了。

9
测试代码可以随意写

10
单元测试和验收测试没有什么区别

11
测试具有免疫性(软件缺陷免疫性)

12
如果软件最后出了问题,肯定都是测试的问题。

详情请见下面链接…          呵呵

http://bbs.51testing.com/thread-142816-1-1.html

[ 本帖最后由 阿七 于 2009-3-12 09:05 编辑 ]
作者: 猫猫的拖鞋    时间: 2009-3-9 16:02
界面、。
作者: 卡朵    时间: 2009-3-9 16:25
开发人员不及时更新文档,在一定的程度中给测试人员带来了了解需求上的不便
作者: wangjingying    时间: 2009-3-9 18:24
碰到过开发人员不做UT的......
占楼,回家慢慢想
作者: shwonder    时间: 2009-3-9 19:45
咱这边的开发人员做单元测试的意识普遍差
作者: 生活总会更美的    时间: 2009-3-9 23:01
在大多数开发人员的眼里,测试都是比较低水平的工作,所以我觉得与其说缺乏测试知识,不如说缺乏测试的意识,更多的时候他们是从系统的角度测试,但是忽略了从用户的角度进行测试。
    另外,在具有一定规模的软件公司,还是会做单元测试,但是对于业务流程测试,尤其是细小分支流程的测试关注度不够。通常开发人员认为只要正常的流程能够通过就算OK了。
    另外,我觉得对异常输入或者错误输入的测试度不够,虽然通常的测试都会考虑这些方面,可是在测试的时候,开发人员往往考虑不够仔细,归根还是意识的问题!
作者: vaguely    时间: 2009-3-10 12:29
刚刚注意到这个版的存在,还挺有意思的。我试着回答一下

1 我觉得最大的问题是很多开发人员对于测试的基本概念都不了解。甚至也没有做过单元测试。
  所以他们也不知道QA们都在做些什么样的测试,和如何做这些测试的。
  相反,很多测试人员都是以前做过开发的。
  针对这一点,应该对开发人员进行最基本的测试培训。
  这样增进了彼此了解,以后工作起来更好交流,责任也更明确。

2 开发人员对测试的定位也认识得不够清楚。
  很多开发人员写完CODE,就提交给测试人员。认为测试人员要对他的CODE负完全的责任。
  有了任何问题都应有测试人员承担。这是非常不负责任的。   

3 在ISO的质量体系里面,每做一项活动都是要有输入和输出的。
  很多中小公司的文档可能没有那么全面,实际情况是很多开发人员等着测试人员凭自己的经验和想象进行测试。
  我觉得需要开发人员能够提供一些测试模块的需求,设计和如何测试的简单说明给测试人员。

[ 本帖最后由 vaguely 于 2009-3-11 12:07 编辑 ]
作者: bingling_11    时间: 2009-3-10 14:59
标题: 回复 1# 的帖子
开发人员最欠缺哪些测试知识?
答:1、测试基本理论知识,使其认识到测试的工作内容不是胡乱点点就可以了,让其对测试人员更加重视。
2、测试流程:首先应进行单元测试,其次是集成测试,再次是系统测试。。。
3、测试管理相关工作的使用:例如缺陷管理工具
4、测试方法:因为开发人员应做好自测,此时必须了解测试方法
5、测试原理:80~20原则,应该在改bug的时候注意bug的相关性
以上是必须的,否则这个开发人员不利于测试人员的工作!!!
作者: angelna    时间: 2009-3-10 16:49
我觉的有如下原因吧:
1、对测试不够重视,他们认为哪是一种低级的工作,意识不够
2、对业务知识了解的不够,不会从用户的角度去考虑问题,认为只要能用就行了
3、对全局的架构不是很清楚,到集成的时候,接口就出问题了,很多开发人员都是只知道他所编写的代码实现的功能,却不知道最最后代码整合后实现的整体功能
4、网上的代码很多,很多不懂的就copy,在公司里也是,很多类似的功能就直接copy代码
5、开发的流程不规范,特别是小公司,连一个像样的文档都没有,软件的实现完全依赖其中一人,当这个人离开后,也就全混乱了
作者: 不是我,是风    时间: 2009-3-10 17:44
标题: 观念决定一切
我同意上面的一个兄弟的观点,开发人员最紧迫要解决的不是测试的知识,而是测试的意识。
1 我们是站在哪个立场上去看问题?测试人员和开发比较难沟通的地方在哪里?性能问题和易用性问题。如果是功能问题他们大多都很积极配合的。关键是功能上没有问题,仅仅是不好用,这个问题很难沟通。我们首先要搞清楚软件是给谁做的?软件好不好谁说了算?
2 护犊子心理。其实每个开发都不希望自己做出来的东西问题很多。一方面是面子工程问题。另一方面是绩效问题。如果你是开发人员,你也不希望自己的名下每天都要增加十来个严重问题单吧。
3 还有些难复现,难定位的问题。我记得有开发人员跟我抱怨说,你们找一个严重问题也许就一个小时,我们定位修改就要花费一天也许更长的时间。这里我们要明白问题始终是要解决的,如果把有问题的软件交给用户,我们会损失的更多。

总结上面的论述,就一句话:观念决定一切。
本周问题的答案是:开发人员最缺少的测试知识是:站在用户角度看问题。
作者: yanyuhuizhi    时间: 2009-3-11 22:33
我很喜欢软件测试,想培训一下,有人了解吗?
作者: 橙色苹果    时间: 2009-3-12 14:19
标题: 思想比技术更重要
开发与测试是两个完全不一样的工作,开发是一项创造性的工作,而测试是一项破坏性的工作!往往开发做长了,要让他做测试,他就不忍心破坏程序,因为他有种思想在里面,他以前也做过开发,他知道创造是很不容易的,开发人员都以创造为自豪。而且一般开发人员写出来的程序,让他自己测都测不出问题来,因为那是他自己写的程序,他会看着哪都对!而测试人员就不一样了,他的目的是找缺陷,他会以找到更多的bug而自豪。这是两种职业最根本区别,也是开发人员转测试后最难改变的地方!
我认为技术方面还是次要的,因为那是知识,谁都可以学会!而思想是很那转变的!
所以开发人员最欠缺的就是专业测试人员的那种思想!
作者: nana∩_∩    时间: 2009-3-12 14:32
标题: 测试技术同样有深度
软件测试,正如前辈们说的,不是人人都能做好的,也是有很高的技术含量的。。
我是个测试刚入门者。。
我会努力的!
作者: bjwanghui    时间: 2009-3-12 15:07
标题: 开发人员在思想上歧视测试
有时开发不是不明白测试的重要,但是却觉得测试就只是比较简单的工作,尤其是测试通过提的bug分析的原因不正确的时候 ,他们就觉得测试没有水平
作者: hzhyin_test    时间: 2009-3-12 15:16
对测试版本的控制,在正式测试活动中,一定要严格控制被测系统不能被开发人员进行修改,要不测试就没有意义了!
作者: xue126519    时间: 2009-3-12 15:22
欠缺测试所需要的思考方法
作者: 雪竹莲    时间: 2009-3-12 15:45
在有了测试人员对系统测试的情况下,开发人员很容易软件的质量全部依赖于测试人员
自己不进行单元测试,也不对系统的简单流程进行测试,都依靠测试人员来完成。最后交给用户的系统没有大的问题,还好;一旦有一些比较大的质量问题,将大部分责任都推给测试人员。
作者: 理财老婆    时间: 2009-3-12 16:02
标题: 回复 1# 的帖子
开发人员缺乏的测试知识。。。。。。很有意思的问题,我也来谈谈自己的想法
1、态度
所谓态度决定一切,开发人员最缺乏的就是对测试的重视程度,很多人总觉得测不测都行,或者让用户直接测就可以了。
2、自测
开发人员自测,这个阶段直管重要。也可以理解为单元测试。才能够开发人员的角度将也可以说是调试。这个过程一定要从技术上和业务实现2方面进行测试。很多开发人员不做此步骤,完事儿了就转给测试,结果测试发现了一大堆明显错误,一个单元往返修改n次,搞得大家都精疲力尽。
3、配置管理
测试还有一个方面是配置管理,有些小的公司没有采用配置管理工具,代码相对零散,造成了很多低级错误的产生
4、沟通
对问题再现,与测试人员沟通重现问题,沟通的技巧很重要。不能总要求我们测试人员掌握沟通方法。开发的又不是大爷,他们也该调整沟通方式,让大家在一个平等的工作氛围内工作。
。。。。。。。
暂时先写着么多,要干活了。
作者: ghf.m    时间: 2009-3-12 20:20
俺也觉得大多数公司不注重测试人员,开发人员瞧不起测试的,以为开发的技术比测试的高,不怎么理会测试人员的观点,最最基本的问题还是对测试的基本含义没有正确的理解,没有从软件质量的整体方面考虑问题
作者: mr.bee    时间: 2009-3-12 20:35
系统业务知识:系统业务知识是开发人员最欠缺的知识之一,但是这也是测试人员最欠缺的知识之一。
测试管理流程:很多开发人员对测试流程的认识模糊不清,例如测试进入准则、缺陷管理、用例覆盖与执行等等。

个人觉得软件测试,特别是纯手工的功能测试会把测试人员变成领域专家。开发人员更像是技术专家,问题是差不多,但是看问题的角度不一样,就比如一个删除操作吧,开发人员考虑得更多的数据的删除,测试人员考虑得更多的是业务上的影响。
作者: yhfeifei    时间: 2009-3-12 21:52
我觉得这个题目应该该为测试人员在开发人员眼里存在的价值?呵呵

不同的开发人员对测试的理解是不一样的
1)测试工作很低级,是完全手工劳动者
2)测试人员完全依赖他们生存,所以对有些bug的提出表示不屑态度,这时候测试人员要学会采用有效措施说服他们。
3)对测试持不信任态度:若测试流程的不规范而造成bug不断被发现,开发人员心里会很不爽,觉得测试的覆盖面不完整。他们总是想跳过测试,直接出产品。
4)没有用户角度考虑开发的东西,或者说,有些开发连自己做的东西是用在什么场景都不明确。这样的开发人员往往会依赖测试来帮他们处理烂摊子。

以上现象说明:
1.开发从观念上需要了解测试在整个团队中的位置,自己在整个团队中的位置。楼上几位说的:意识转变。
2.对测试的流程深入了解,并对测试中不足的地方不断完善,共同努力!
3.协助测试工程师进行自动化测试,学习测试工程师从用户角度上考虑开发产品的观念
4.积极配合测试工程师完善单元测试流程
5.把握开发系统的整体功能和性能需求。

总之,需要互相沟通,学习,创造新的价值!这样就不会再需要讨论这样的问题了
作者: puchonghui    时间: 2009-3-12 22:18
真不明白,那么多人都说开发人员最缺的是测试知识。。。
开发人员需要了解那么多测试技术么? 那要你们干嘛?

目前普遍存在的问题是:大部分开发人员都是以功能为目的去干活,没有非功能性质量方面(例如易用性)的意识。说白了,开发人员普遍缺乏但是又需要的是以最终用户为中心的质量意识,尤其是在前期的需求和设计阶段。
作者: snail2011    时间: 2009-3-13 10:44
标题: 我也来说两句
我一直负责测试,已经深知了测试与开发的对立性及相互性,我不认为开发人员就要掌握测试技术,如果开发人员都掌握了测试技术,那不如不成立测试部门或测试小组了。

当前问题:开发人员最欠缺哪些测试知识?这个问题不如更好问一下:开发人员与测试人员的根本矛盾是什么。
我试着从以下几点做了回答,错了请拍砖
1、开发人员一般的开发环境比较恶劣:给他们一套开发环境,人人争用。所以有些开发人员就不可能把自己所做的那一部分完整的去单元,达到最基本的功能就可以了。
2、而测试环境一般要模拟生产环境系统,所以测试环境的优越性就显现出来,一旦可能某些开发人员就要用测试环境调试(同事之间,借用环境也是正常的),但借用之后,在测试人员正常测试发现BUG时候,由于惯性就要通过测试环境来调试BUG而占用测试人员时间。
3、开发人员有时候往往开发一个小程序时,并不去自己检查,而是直接交给测试人员,当我每次问起,你自测了没有,他们通常会说测试了,但有你们把关我放心。反而拿到手一开测就发现了大问题。
4、需求管理上的问题,其实在开发中间,需求人员有一点小小的创新思维会直接给开发人员直接讲,而没有去更新需求,从而导致测试时发现了问题有变化性,此时才知道需求人员与开发人员口头达成的协议

测试人员和开发人员一定要培养起良好的同事关系,一定要及时沟通,才能消除更多的不愉快,但是测试人员一定要有自己的立场,与需求出现不一致,一定要让需求人员知道只通知开发人员而不通知测试人员导致的结果,让他们在心理上也有一定的影响
作者: 沉默风云    时间: 2009-3-13 11:23
开发人员最欠缺的是:不能真正站在测试人员的立场上、不能站在客户的角度去思考问题。

很多开发人员也会接触或者学习很多测试知识,测试理论、测试技术不亚于专业的测试人员。但由于自己参与开发,所以开发人员往往会形成思维定势,总是觉得自己开发的东西没有问题。所以一些缺陷会被开发人员遗漏。

[ 本帖最后由 沉默风云 于 2009-3-13 11:31 编辑 ]
作者: 沉默风云    时间: 2009-3-13 11:36
标题: 回复 14# 的帖子
赞同,和我的想法一致。
作者: hehez    时间: 2009-3-13 14:39
刚入门中,学习中
作者: woshiwoxiaoli    时间: 2009-3-13 16:32
开发缺乏测试的意识和方法:
1、意识:很多开发感觉有测试人员会帮他检查功能里的bug,所以在意识上不会对自己开发的功能做过多的检查,一般是指要完成了设计,编译通过就可以提交测试了,这样往往是测试人员拿到手上之后点什么都报错;
2、方法:一个功能可以有多种操作方法,所以开发即使进行了单元测试,也只是以最简单的操作方法进行的,而且或许操作方法都是不正确的。
作者: 小草    时间: 2009-3-13 16:34
标题: 我来说说
1.  质量意识:我觉得首先不应该说开发人员欠缺那些测试知识,开发就是开发,不必要去深究测试知识。但是有的开发人员缺少质量意识,最起码不能对自己写的东西以高质量的要求来约束自己。对于测试来说,也就是单元测试,在这个阶段,不少开发人员不重视,因为觉得后续还有测试人员进行测试,我的任务就是按照要求写出代码即可,至于质量是后面测试人员要关注的,测试出了问题我就改就是了,就是这种思想导致了很多所谓的低级错误的产生。
   2. 业务理解:其次就是对于业务的理解上面,许多开发人员只愿意了解自己的那些开发任务,不能从全局上去了解,起码对于与其他人员的接口等方面不甚了解,经常导致修改一个问题,却引发出了很多其他的问题。
   3.对于测试工作的认知:我觉得很多开发人员不知道测试人员要如何来测试他的程序,我们以前的一个方式就是要让开发人员了解测试人员如何工作,对于测试用例的评审,也要求开发人员抽出时间参与,起码各自要了解自己的那块程序,未来测试人员会如何测试,那么他在编写程序的时候会提前考虑哪里是测试人员测试的重点和关注的地方。
作者: ppyzc    时间: 2009-3-13 16:46
标题: 半点意见
1.bug认识:首先,任何一个能够运行的软件单独拿出来都是不存在bug的,所谓的bug是软件实现出来的结果与设计要求(用户需求)不一致,所以就产生了bug。所以在测试的时候最重要的是站在用户的立场上设计测试用例,进行最有效的测试。
2.理论知识:通过理论知识是一个好的测试工程师必不可少的,能更好的指导测试人员进行高效的测试。
3.测试用例的设计:要抓覆盖率和复用率。
其实测试是很复杂很系统的,不是三言两语能说清楚的。最重要的是公司对他重视,测试人员能严格执行,并勤于思考,那么公司的测试肯定是能做好的!
作者: believe    时间: 2009-3-16 12:56
1.开发人员技术不够,开发出的软件质量不高,会导致测试工作不便
开发技术不是很熟练(往往实现一个功能有多种方法,但采取了非恰当的方法,如算法、代码实现等);项目经验不多;行业性的特性不清楚;对负责的模块业务理解不透彻、只是关注本模块不考虑前置、后置情况;只考虑功能问题,忽略界面、操作性等问题,认为是小问题(但往往用户首先关注的是这些问题)
2.管理不规范,需求文档不存在(如只是口头说说而已,未文档化);存在的经常变化的需求(又记录或没有同步更新),开发人员之间不一致,各做各的,没有一个总体规范;测试环境不对立或者独立但是控制好(版本同步否等)
3.一些开发人员很少主动沟通
4.一些开发人员修改bug不考虑所牵涉模块、不考虑bug的优先级,从容易性bug开始修改
5.开发人员自己负责的模块不进行测试,实现了就提交,说做好啦
....
作者: execoo    时间: 2009-3-16 14:40
原帖由 puchonghui 于 2009-3-12 22:18 发表
真不明白,那么多人都说开发人员最缺的是测试知识。。。
开发人员需要了解那么多测试技术么? 那要你们干嘛?

目前普遍存在的问题是:大部分开发人员都是以功能为目的去干活,没有非功能性质量方面(例如易用性) ...


嗯,这种说法也许更实际点,指望开发人员去了解各方面的测试技能,一个来不太现实,二来如果真的这样,也许对测试人员,对公司来说也不一定是多好事。
当然开发人员做单元测试,测试人员做集成测试,这样也许会好点。
至于开发人员对测试人员的态度,也许除了各位说的一些,应该还有测试质量的认知度的问题吧,呵呵,其实这也就是跟测试人员会经常抱怨开发人员的开发质量太弱是一个道理的,呵呵
作者: execoo    时间: 2009-3-16 14:43
原帖由 believe 于 2009-3-16 12:56 发表
1.开发人员技术不够,开发出的软件质量不高,会导致测试工作不便
开发技术不是很熟练(往往实现一个功能有多种方法,但采取了非恰当的方法,如算法、代码实现等);项目经验不多;行业性的特性不清楚;对负责的模块 ...


呵呵,说的好!这些都是在开发人员中经常出现的问题。我最近还在想怎么解决这些问题呢。
作者: zengjiemei    时间: 2009-3-16 17:10
标题: 态度决定一切
其实主要是开发人员对测试的态度和对自己程序的态度
作者: zynuage    时间: 2009-3-17 10:45
其实开发人员是根本不懂测试的,他们认为公司出现测试是多此一举,甚至有人认为测试就是调试,只不过开发没时间找错误,所以才会有软件测试,软件测试就是帮开发找错误。所以,要想让软件错误少,还是让开发系统学习下软件测试的理论。
作者: rolei    时间: 2009-3-17 12:47
标题: 不是知识,是意识
不是测试知识,是质量意识,是对自己工作认真负责、尽心的意识。

因为不需要承担什么,所以无所顾忌。

开发不是凑代码,而应当是在创作一件艺术品。
作者: UU1983    时间: 2009-3-17 15:30
标题: 我来说两句
当今开发人员缺乏的知识就是意识

能作开发的可以说虽不是博览群书,也算是通达之人了,为什么很低级的错误会犯很多次都没有改正而且在不断的重复呢,原因之一就是没有很好的意识


什么是意识。。。通俗的来说当你被油烫到手你的手就说不自觉的缩回来,因为大脑传输了疼痛的感觉,这是人体的自然反射,这种意识对于我们是珍贵的,因为没有了这种意识我们就不算一个正常的人,我们的心灵和身体都会受到创伤。
那为什么我们在工作中没有这种意识呢,因为我们受到的损失并不是直接性的,大不了被主管说两句,能怎么样,最差就是被开被,此处不养爷自有养爷处,这种意识大大的把好的意识个压制了,揪其根源就是没有敬业精神
培养敬业精神是提高开发人员测试意识的根源所在
如何培养敬业精神
1待遇有待提高
2思想教育不可少
3有条理的规章制度
作者: ducan    时间: 2009-3-26 23:21
思想比技术更重要,有道理




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2