如何更好地与开发工程师沟通-给测试工程师的建议
|
51CM.COM原创 作者:关河 [2005/01/04] |
作为测试工程师,在日常工作中接触最多的当然是团队中的开发工程师,如何和开发工程师进行有效的交流是测试工程师面对的 重要问题。一般来说,在一个团队中,总是有开发人员喜欢和不喜欢的测试工程师,这两者之间的工作效率和效果都有很大的差异。当然,不能武断地说测试人员不 喜欢的测试工程师就一定是效率低下的测试工程师,或者说是不合格的测试工程师,但一般来说,那些容易得到开发人员认可的工程师在测试时总能够更好地发现缺陷和敦促开发人员解决缺陷。 测试工程师和开发工程师承担的是开发工作的两个不同方面,说得极端一点,一个是创建,一个是破坏,虽然两者的 最终目的都是一样的,但在达成目标的方式上却有很大的差异。因此,在为同一个目标奋斗的过程中,发生冲突也是难免的,但通过下面的一些建议,换个视角看看开发人员的生活和工作,可能很多的冲突就能化解于无形了。 Cem Kaner在《Testing Computer Software》书中有一段话: “The best tester is not the one who finds the most bugs or who embarrasses the most developers. The best tester is the one who gets the most bugs fixed.” (最好的测试人员不是发现最多BUG或是使得最多开发人员不自在的人,而是能够[说服开发人员]修正最多BUG的人),建议大家好好理解这句话。 至于我个人,是从开发工程师转为测试工程师的,对于开发工程师的处境和想法也曾有过切身的体会,或许是这个原因,让我在和开发工程师交流的过程中还算是比较 顺利,和他们相处得也还不错。在我的测试经历中,也接触过相当多的开发工程师,这里我把和开发人员交流的经验归结为“五要四不要”: 1、要耐心和细心 细心是测试工程师的一个基本素质,测试工程师是对质量负责的人,涉及到质量问题,就不能含糊,因此一定要细心,细心对待每一个可能的BUG、细心对待每一段 被你检查的代码,细心对待每一个你撰写的BUG报告,细心对待你发出的每一封邮件。细心是一种态度,你的态度迟早会感染和你合作的开发人员,而这往往是合作愉快的基础。 至于说到耐心,在我的工作经历中,不厌其烦地向开发人员解释一个BUG,让他认识到BUG的重要性是经常的事情,其实想想也很正常,对任何人来说,被人指出自己的缺点和不足都不是让人舒服的事情,因此,一点不耐烦的情绪就可能引起对方很大的反感,给自己的工作带来不必要的麻烦。 2、要懂得尊重对方 开发是一件需要全面和综合考虑的工作,开发工作中,由于各种原因导致程序中出现问题是很正常的现象,作为测试工程师,发现了这些问题并不值得你夸耀,也不能 说明你比开发工程师聪明。一个好的测试工程师一定是懂得尊重开发工程师的人,尊重对方的技术水平,尊重对方的代码。我接触过的开发人员都是挺和善的,一般来说,对他们最大的尊重就是承认他的专业水平,承认他的代码。对他们来说,代码就像是自己的孩子一样:)因此,记得在合适的时候表达你对他的尊重,赞扬一下他代码的精妙之处。 3、要能设身处地为对方着想 开发工程师一般都处在较大的工作压力下,他的上司直接考核他们的指标很大程度上是已完成的代码,所以在工作任务紧张的时候,对于测试工程师报上来的BUG会 拖延解决甚至是推脱,给测试工程师的感觉就是很不合作。那么在这个时候,就需要设身处地的为对方着想了,每个人都会为自己的工作在内心排定优先级,如果他 认为解决你发现的BUG不是重要的事情,那么最大的可能就是你并没有向他解释清楚这个BUG的严重程度。 发现BUG是我们的责任,敦促BUG得到解决是我们更重要的责任,因此,我们可以心平气和地和开发人员坐下来讨论一下BUG的严重程度,和他一起排定BUG的优先级别并确定解决的时间。 4、要有原则 不要忘记,测试工程师需要对产品的质量负责,在这一点上一定要有原则。测试工程师可以和开发工程师建立良好的个人关系,但在具体的事情上,一定要按照公司的 相关流程来处理。当然,在坚持原则的同时,可以采用一些委婉的表达方式,可以在允许的情况下尽量体谅开发工程师,但请记住,一个有原则的测试工程师才能真 正帮助开发工程师,才能赢得开发工程师的尊重。 5、要主动承担 如果开发工程师要求你承担部分不属于你的责任,比如,定位你发现的BUG到代码一级,或者是帮助他编写部分文档和代码(不要不相信,真的有这样的事情),那 么你会怎么做呢?在我的测试经历中,这些事情都遇到过,我的原则是在可能的情况下尽量多承担。其实都是工作上的事情,有能力的话,多做一点也无妨。当然, 肯定有人不同意我的意见,在这里我也不想争辩,个人意见而已,仅供参考:) 在我的测试经历中,我会根据自己的进度和时间安排尽可能地提供更多的关于BUG的参考意见,甚至是定位到代码一级,这种方式不是正规的方式,但对于提高自己被信任的程度是非常有益的。但在主动承担时,一定要明确是在自己确有余力的情况下才能去承担,否则,婉拒是最好的对策。 【四不要】 写了这么多,其实关键的就是两点:多从别人的角度去想想,所谓“换位思考”,多尊重对方就一定能得到对方的尊重与配合;其次是加强和开发工程师的沟通,让他清楚地认识到你的工作对他的价值,你发现的每一个BUG的重要性。 |