软件测试的职责
上一篇 /
下一篇 2012-07-27 08:46:30
/ 个人分类:杂谈
以前,我是个开发人员。我不喜欢这个工作,无尽的压力让我疲惫。我几乎从未感觉到自己的工作做得足够好。我从未有过真正的休息。如果我没做好,我们就可能超过最后期限,或者是打包了一个垃圾产品。经历了这些之后,成为一个测试管理者感觉就像是休假一样。}w(i
ZHhx%T0 测试同开发比起来,是一个非常模糊的工作——有很多的余地。我要做的仅仅是找问题。
Ew5pC4c^051Testing软件测试网+P b[z'C 我曾经认为测试的职责就是找问题。51Testing软件测试网$uAg9p
~#w
&C:L:M#C/\
k:Kb0vt0 找问题很简单,但是时间长了就会发现这样很难让人满意。我想让产品变得更好。51Testing软件测试网"qHSvQ,T
hGm gL.u;h0
我曾是Apple一个400人团队中的众多测试专家之一。由于团队名称是软件质量保证(Software Quality
Assurance),我们在质量保证(QA)上的讨论过比测试还多。一个管理者推荐了一本书,Philip Crosby的Quality
Without
Tears,以此来帮助我们看到自己在产品开发过程中更深层次的职责。这本书提到了“零缺陷”,于是我转向了缺陷预防这一理念。“质量不是测出来的”是我
们的口号。51Testing软件测试网bR+e0pj
51Testing软件测试网KrW#_mRm 我曾经认为测试的职责是保证质量。51Testing软件测试网0W8D1Zqr
51Testing软件测试网8~$kY%a Z|&B 但是,测试人员并不能真正的保证质
量。首先,完美的质量本身就是不可及的目标。质量有多个方面,其中的一些就是冲突的。其次,测试人员并不创造质量,所以保证质量这样的职责并不在我们的能
力范围之内。如果我们把自己想象成质量把关者,团队的其他人就有可能倾向于为质量少承担一些责任,他们会认为有QA在保证着质量——这样如果产品不是很
好,我们就会承担主要责任。51Testing软件测试网H0zCu W
ZWaEOSh5uA7W0 除此之外,许多QA是通过定义流程和审查流程的执行来发挥作用。问题是,这样的一个方式很容易就会沦为关于
质量的说教,在响亮的口号和常见的“好的质量是好的,不好的质量是不好的”式的争论中,QA所有的优点都看不见了。这就是为什么很多开发人员把QA视为耳
边的噪音——只会另他们分心。
H/a3]e3}-c0E051Testing软件测试网m0K4ni?Y 而我,从这种招人烦的角色中被解救了出来。经理把我叫到一边,告诉了我一个大秘密:一切都是为了风险——
不必追寻完美,只需找到一个足够好的东西就够了。这样就把测试和质量保证转变成了一种项目的雷达,寻找敌人。我们在项目中是要快速的找到重要的问题,而不
是每一个历史阶段中的每一个旧问题。
F}Ed9r"uq051Testing软件测试网F^R)Ll 这深深的改变了我的思想。我不再像以前那么关注要在测试中达到尽可能全面的覆盖,而是关注哪一部分真正需要测试,并评估未知问题的风险。51Testing软件测试网s|o$xg!C_+rHdv(C
51Testing软件测试网HQ#?9OI~eJ A 考虑风险使测试人员在项目中更加容易与其他人相处。关于质量的讨论变成了判断哪些有影响,而不是纠结于谁想要完美。
"f7t?,_~0^!a#\4g9@*Z?0 我曾经认为测试的职责是分析风险。
s_8i_k8Y1l051Testing软件测试网LWb_"D
Kp 风险是很重要,但它仍然是一种抽象的概念,而且悲观。一个开发经理跟我说他不喜欢谈论风险。“风险听起来很消极。我们不是保险公司理赔员,我们是企业家。我们勇于冒险。”他说的很在理。回报才是项目最重要的部分。难道对于测试,就找不到一个更全面和积极的观点了?
3P\-@&o5W051Testing软件测试网2KrGn(f)T8DRN
当然,测试的目的的确是发现问题、分析风险、以及保证质量,但是还有一种更本质的方式来看待我们的职责:我们照亮道路。没有测试,项目在黑暗中乱撞、被
障碍绊倒、最后跌下悬崖。而测试会在需要的地方点亮火把,来帮助开发人员和管理者知道他们在哪、他们要去哪、还有他们什么时候能到达。51Testing软件测试网xW4oM"O?i
51Testing软件测试网^-X(Z5f
BGf 现在,我认为测试的职责是提供重要信息,来协助创造和运营优秀的产品。这包括了发现问题、保证质量、分析风险、以及其他任何能够帮助团队了解当前状况的方式。
{:^W]ir"~r]0FtC z`&G,q
O'?-u8Z0 明天,我会怎么看待测试呢?
a%s R1S0F|!id!Z`0
收藏
举报
TAG: