软件测试是一项技术工作,测试者不是市场公关人员,之所以单独讨论软件测试的人际关系,是因为软件测试不是孤立的实施过程,软件测试的每个过程都要与软件开发人员(程序员)和软件测试人员相联系。另外,如果软件实行外包测试,则软件测试外包的人员还要与软件开发商的技术人员紧密联系。软件测试中处理好与不同人员的工作关系,建立彼此的信赖,可以提高测试的效率,减少测试失败的风险。因此,软件测试的人际关系不仅要讲,而且要找出行使有效的方式。
1. 测试人员与开发人员的人际关系
与软件开发具有天然的联系。软件测试的输入是软件开发的产品,测试输出的结果需要开发人员相应处理,处理后的结果再次需要测试人员的验证。因此,软件测试与软件开发如影相随,互为服务对象。
软件测试人员和软件开发人员要多从别人的角度去想想,所谓“换位思考”,多尊重对方就一定能得到对方的尊重与配合;其次是加强和开发人员的沟通,让他清楚地认识到测试工作对开发工作的价值,发现的每一个Bug的重要性。
软件测试人员对于软件缺陷的报告要就事论事,只报告软件缺陷的客观事实,不对软件代码本身的质量优劣进行评判,不搞人身攻击。软件开发人员要理解软件测试的工作职责就是寻找软件缺陷,而不是故意和自己的代码“过不去”,也不要认为软件测试是动动鼠标,敲敲键盘的低水平工作,软件测试也是一门技术和艺术。测试和开发只是软件工作的分工不同,都是软件项目团队不可分割的成员,而且软件测试人员发现的Bug,可以帮助开发人员尽早修正,避免软件发布后造成更大损失。
2. 测试人员与质量保证人员的人际关系
不同的软件公司对质量保证(QA)人员的职责和功能存在不同的理解。有些公司QA人员等同于测试人员,负责具体的软件测试工作。也有的公司QA人员只负责软件项目的过程检测和跟踪,不参与具体的测试工作。
这里所说的QA人员是指对软件测试的质量和过程进行评估的人员。QA人员通过抽查测试用例的执行结果,或根据测试发现的软件缺陷数据信息对软件测试的质量和过程进行评估。QA人员一般需要熟练掌握软件测试的技能,熟悉软件产品。
软件测试人员与QA人员都是软件质量控制团队的成员,只是二者的职责不同,但是都是具有相同的工作目标,即一切行为都是为了提高和保证软件质量。软件测试人员可以从QA人员的测试评估报告,发现测试存在的不足和取得的成果,因此,需要理解和尊重QA人员,加强交流,相互信任和支持。QA人员要注意对软件测试的效果进行评估时,一切以客观数字为基础,对事不对人,关键是发现影响软件测试质量的问题,并且提出可行的改进建议。
3. 外包测试服务商与软件开发商的关系
软件测试外包成为新的软件测试形式,由于软件测试活动的复杂性和长期性,软件开发商与提供软件测试服务的服务商之间的交流变得非常重要,处理好测试外包服务商和开发商之间的关系将对软件测试具有决定性的影响。
软件外包测试是一种软件技术服务,外包测试服务商的价值在于通过提供专业的测试服务为客户创造附加价值。软件开发商通过测试外包,集中人力和物力从事软件核心技术的开发,增强产品的竞争力。因此,外包测试服务商与软件开发商之间是业务合作关系。
信任关系成为外包测试服务商和软件开发商最重要的内容。测试外包服务商要赢得软件开发商的信任,需要提供优质、高效、及时地软件测试服务,需要理解、达到甚至超过客户的期望,树立一切为客户服务的思想和意识,并且贯彻于整个软件外包测试的全过程。
软件开发商要选择符合项目需求的外包测试服务商,为他们提供充分的项目信息和必要的技术支持,因为只有软件开发商真正熟悉要测试的软件。通过对外包测试服务商测试项目的执行过程和结果,及时提出存在的问题,并且督促过程改进。