沟通是指信息自我传承或者不同个体间信息的有效传递与接受。沟通的方式可以包括语言沟通和非语言沟通。非语言沟通通常指通过文档,邮件等等方式进行的非面对面交流的沟通。
在实际的测试过程中,我经常能听到下面的人(这些人中有开发,有测试,还有其他)抱怨:“这需求里就是这么说的,也是这么设计的,你让我怎么办?”其实就这么简单的一句话,却暴露出了大家的沟通出现了非常严重的问题。
文档是大家进行沟通的一个基础条件,而现在很多项目的文档质量不高已经成为一个不争的事实,另一方面技术人员通常都自嘲自己“不善言语”。由于本人只要负责测试项目,我的观点大多从一名测试的角度出发,或许可以试用于其他方面。
对于测试来讲要从这质量不高的文档中去发掘“疑惑”,这个本领的练就除了“天分”外,更多的依赖你对项目的把握。举一个简单的例子:登录功能,我相信很多人都测试过,但在文档中你看到这个时,你能想到什么?登录通常都是输入用户名,密码,点击登录或者确定,进入下个流程。可能这个时候,大家觉得这个已经可以了,但作为测试,仅有这些内容,完全不够。文档中仅仅描述了登录的简单流程,并没有讲清楚各输入项的要求,如果特定的文档中也缺失了这部分的内容,那么你需要找专人去“沟通”,通过沟通,你需要确定用户名的规范是什么?密码的规范是什么?是否有易用性方面的要求等等,其实大家可以发现,这些都是作为测试在设计测试用例时考虑的东西,而这些东西如果缺乏,你的测试用例完全无法完成。
沟通的目的是让别人理解你的真实想法,千万不要想当然。我遇到过这样的情况,一个项目,可能由于我自己对业务相对于其他人来讲要熟悉的多,所以当我看到某个特定的描述的时候,我自认为其他人也明白了。可用例评审的时候,我发现大家对这个特定的描述根本没有理解,我很困惑,我质问大家,可最后我发现问题出在我身上,我把自己的意愿强加在了别人的身上:我自认为别人也清楚。所以,我们任何时候都要清楚沟通就是要让别人知道你的想法或者弄清楚别人的想法。
沟通是一门非常重要的技能,无论你现在的角色是什么,记住,沟通能让你有更多的收获!