以前,我是个开发人员。我不喜欢这个工作,无尽的压力让我疲惫。我几乎从未感觉到自己的工作做得足够好。我从未有过真正的休息。如果我没做好,我们就可能超过最后期限,或者是打包了一个垃圾产品。经历了这些之后,成为一个测试管理者感觉就像是休假一样。s$QB"jkYe]@0 测试同开发比起来,是一个非常模糊的工作——有很多的余地。我要做的仅仅是找问题。51Testing软件测试网8L|Fd+R
;i
YTQ D!?N0 我曾经认为测试的职责就是找问题。51Testing软件测试网0v-Q2X
]3QT
8Fr3yD
Z:b6d!YI(n|$^0 找问题很简单,但是时间长了就会发现这样很难让人满意。我想让产品变得更好。51Testing软件测试网F,RMz4|0}:B
i
xtM"B&O0
我曾是Apple一个400人团队中的众多测试专家之一。由于团队名称是软件质量保证(Software Quality
Assurance),我们在质量保证(QA)上的讨论过比测试还多。一个管理者推荐了一本书,Philip Crosby的Quality
Without
Tears,以此来帮助我们看到自己在产品开发过程中更深层次的职责。这本书提到了“零缺陷”,于是我转向了缺陷预防这一理念。“质量不是测出来的”是我
们的口号。51Testing软件测试网-QA-R,Hx;},hk
51Testing软件测试网$jx2T:U^!Vo l+c 我曾经认为测试的职责是保证质量。51Testing软件测试网C#rP|3m4|,u\
51Testing软件测试网K/f j]x(LfF 但是,测试人员并不能真正的保证质
量。首先,完美的质量本身就是不可及的目标。质量有多个方面,其中的一些就是冲突的。其次,测试人员并不创造质量,所以保证质量这样的职责并不在我们的能
力范围之内。如果我们把自己想象成质量把关者,团队的其他人就有可能倾向于为质量少承担一些责任,他们会认为有QA在保证着质量——这样如果产品不是很
好,我们就会承担主要责任。
mPcC8N3j051Testing软件测试网:Al9E'b/rl 除此之外,许多QA是通过定义流程和审查流程的执行来发挥作用。问题是,这样的一个方式很容易就会沦为关于
质量的说教,在响亮的口号和常见的“好的质量是好的,不好的质量是不好的”式的争论中,QA所有的优点都看不见了。这就是为什么很多开发人员把QA视为耳
边的噪音——只会另他们分心。
'U8AJb7AjbA051Testing软件测试网$B*J6hLuq1z8nD 而我,从这种招人烦的角色中被解救了出来。经理把我叫到一边,告诉了我一个大秘密:一切都是为了风险——
不必追寻完美,只需找到一个足够好的东西就够了。这样就把测试和质量保证转变成了一种项目的雷达,寻找敌人。我们在项目中是要快速的找到重要的问题,而不
是每一个历史阶段中的每一个旧问题。51Testing软件测试网gXUh)h4F(G
!}!Tq9h~)v t6\0 这深深的改变了我的思想。我不再像以前那么关注要在测试中达到尽可能全面的覆盖,而是关注哪一部分真正需要测试,并评估未知问题的风险。
T"|pJ6\7p'ki9t051Testing软件测试网*Dh/H1J(S3q;K-iZ1z 考虑风险使测试人员在项目中更加容易与其他人相处。关于质量的讨论变成了判断哪些有影响,而不是纠结于谁想要完美。51Testing软件测试网^wI\G/cd?
i0j
|HF"w6]0 我曾经认为测试的职责是分析风险。51Testing软件测试网
J_0q5q:N
oj*a
51Testing软件测试网!`/M RZNX 风险是很重要,但它仍然是一种抽象的概念,而且悲观。一个开发经理跟我说他不喜欢谈论风险。“风险听起来很消极。我们不是保险公司理赔员,我们是企业家。我们勇于冒险。”他说的很在理。回报才是项目最重要的部分。难道对于测试,就找不到一个更全面和积极的观点了?
3A
d dgH&J Uq6CrT051Testing软件测试网$`R0]4J#F"`&p|
当然,测试的目的的确是发现问题、分析风险、以及保证质量,但是还有一种更本质的方式来看待我们的职责:我们照亮道路。没有测试,项目在黑暗中乱撞、被
障碍绊倒、最后跌下悬崖。而测试会在需要的地方点亮火把,来帮助开发人员和管理者知道他们在哪、他们要去哪、还有他们什么时候能到达。
4[bE3z2j'u0XB_?4z8m0 现在,我认为测试的职责是提供重要信息,来协助创造和运营优秀的产品。这包括了发现问题、保证质量、分析风险、以及其他任何能够帮助团队了解当前状况的方式。51Testing软件测试网4Y3V(_
RK~'b~
51Testing软件测试网kv9})aQ0I0I9\ 明天,我会怎么看待测试呢?51Testing软件测试网L)b.liW?S