测试人员的脑子里到底在想什么?
上一篇 / 下一篇 2011-12-23 10:11:23 / 个人分类:测试人生
测试人员到底是怎么想的?怎么有时总是往牛角尖里钻呢?怎么总是让人搞不懂?后续章节里就简单的说说“测试人员的脑袋里到底在想什么呢?”
RF|_ HP4L051Testing软件测试网7VTC#l$H b*r测试人员测试考虑问题基本有几个方面:
?1^Lrc-U5A0“测试人员的脑子里到底在想什么呢?”(一)51Testing软件测试网4j(n6WSUj D[
[_M9IR#L U0 在一个项目中,测试人员与开发人员的良好合作往往起到事倍功半的作用。纵观一个成熟的项目,测试与开发都是紧密合作、相得益彰的。在软件行业说明举例中大家都习惯于用微软、IBM、HP等国际大企业来说明,也确实如此,这些大公司都是一些好的借鉴。好像有这么一个规律:凡是做的好的项目,测试与开发的合作也都是比较好的。而在国内一些企业里,由于软件工程发展相对晚一些,这方面的经验比较少,好多项目中测试人员和开发人员经常会发生一些摩擦、甚至冲突,一些有经验的管理人员、开发人员和测试人员还比较好一些,而经验较少的人员表现比较突出,如果再加上一些管理方面不够到位的话这种冲突就比较严重了,有的项目测试人员和开发人员甚至到了互相不能容忍的地步。这不是夸大其辞,确认经历过这样的公司和这样的人,往往是经验越丰富的人员对测试与开发的作用越理解的比较透彻。
Ead1Zr}4K051Testing软件测试网8]5QW6Vj追其原因,主要是因为测试和开发的工作内容虽然相同,但考虑问题的角度却各异。这样有时候站在这个角度看到的问题与另一个角度看到的问题是不相同的。有时这种不相同就会导致争议发生。如果双方都能够站在对方的角度考虑一下就会明白对方为什么要提出这样的问题。但是站在对方的角度来考虑不是说说就能明白的,有时非得亲身体验一回不可,否则还是有一些不理解。更何况对方是怎么想的、原则是什么都不一定能够说的很清楚。51Testing软件测试网2Wp$Q:G"ptC{l*a
51Testing软件测试网,l#^5k+zi&X往往会听到这样的评价:测试人员不知道怎么想的,总是做一些用户不可能进行的操作;我真服了测试人员,不是好好的测试功能,不知道都在想些什么,非要搞一大堆没用的数据录入;我看测试人员故意找茬,本来好好的功能非要钻牛角尖,找出几个没用的BUG来表现自己的水平。等等。51Testing软件测试网vS6r;|C}:^
51Testing软件测试网Dad0piB后续章节就测试人员考虑问题的思想因素做一说明,试图起到抛砖引玉的作用,供开发人员和测试人员来参考。文章中的描述或用词不妥之处也希望大家指出来我尽快更正,提前道谢了!
6P t-Gw8xiV^0“测试人员的脑子里到底在想什么呢?”(二)51Testing软件测试网(Qkty6VW ]5Z
J y;Em}N aW.E v0 系统是否做了该做的事情?还有就是系统是否做了不该做的事情?
.^Qiif$B,Wt cQ051Testing软件测试网7p5P6Lbw!DY ~8M今天,在用户现场的测试人员打电话回来:“我们的系统出现了一个大的问题:通过前台界面修改一条记录没有成功,系统也很正确的进行了提示,可是后台系统却把修改信息发了出去,其他厂家开发的系统接收到消息后同时进行了响应的修改,并且把修改成功的信息发送回来了,可是我们的系统却没有成功修改,导致业务不能正常进行,这样的系统根本就不能放行。”51Testing软件测试网/O F'jnl;t YU%x@\
51Testing软件测试网.Wj2tkJ1E(|这个案例就是一个很好的说明。测试人员在测试的时候首先会考虑系统是否实现了预期的功能-前台界面修改记录不成功进行提醒,但同时还要考虑系统是否做了不该做的事情,在这个案例中就是既然没有修改成功,那就不应该发送消息给其他系统要求修改相关信息。
!_~!_FB0a E4L0Dt&_g]h0 这种问题多发生在功能之间的接口或者是多个人开发的系统中。例如在航天史上有名的案例:美国发射火星探测器,整个研发过程都比较严密,但是最终登录失败了。问题的原因就在于系统出现了问题:火星着陆与着陆后出现不衔接。着陆后系统运行应该在着陆的数据基础上运行,而项目研发的时候着陆后的系统运行实在数据清空的基础上运行,根本就没有考虑到实际情况。
e*tk[B_3yYkG0"W,E!@ R&L5Lqt0 这种情况开发人员与测试人员容易发生争议的地方是:开发人员认为我做的系统或功能没有问题,我已经测试通过。有的还会说当初没有告诉我要这样做,或者是别人没有在我的基础上考虑,或者别人没有给我传送我需要的数据。这时如果项目组织不够好的话测试人员往往要协调多名开发人员或开发团队来解决问题,有如果不乐观的话会吃力不讨好,无人理睬。
jc ~X6u;{{)a0“测试人员的脑子里到底在想什么呢?”(三)51Testing软件测试网 `,hmQ0R
0fMm5J:O^ {}0 不仅要进行合法性的测试,同时还要考虑非法的是否可以进行。
n2`Aky M,Y,W051Testing软件测试网0cJ0T6I#vfbOS测试人员认为合法输入或流程等一定能够正常进行,同时非法的输入或者流程不能够进行,系统应该有所判断并有相关信息提示。为什么要有提示?不一定所有使用系统的人都知道哪些是非法的。
[9G'c+[p~I/j[0T!M:o#B+a#F\3o0 举个很简单的例子:数据录入的时候,如果没有进行非法检查,一些非法字符进入系统很可能会给以后造成很大的数据错误,比如一些保留字、特殊字符等等。例如在一个文本框中输入一个单引号(‘)成功的话,在数据库中有时执行一条SQL语句的时候会把单引号做为SQL命令而导致SQL脚本执行不成功或者录入错误数据。试想如果在远程紧急救护系统中把紧急抢救时间1分钟错误成10分钟后果会是什么?如果关键时刻系统出现崩溃会是什么后果?那就不是BUG了,是杀人!51Testing软件测试网 BBB7RZ/Hr9n
Qx0dI1Ep(b2??0 这种情况开发人员往往会说:测试的都是些什么呀?不痛不痒。能不能发现一些重要的、深层的BUG呀?岂不是这个不中要的BUG如果把数据放行进入数据库,后面就会出现重要的、深层的BUG了。有时对这些BUG不置可否。51Testing软件测试网HtL/f4BPG4P
“测试人员的脑子里到底在想什么呢?”(四)51Testing软件测试网%S(| A2as'_;v?7z