rolei 发表于 2008-4-9 10:21:07

谁之过?

前些时跟一测试同行聊天,谈话之中聊到了他当前项目的运作情况。
话题一打开,他立即来了兴趣,侃侃而谈,最终谈到当前的项目的测试情况,他不免大发牢骚。
问其原因,原来是客户来反馈了,产品又出现问题了,这次客户竟然不能安装发布后的产品。
作为这个产品的测试负责人,明明测试通过的产品,为什么到了客户那里就不行了呢,而前几次的Enhancement的发布也没有出现过这种低级的错误啊。

他问我怎么看这件事。

我问了他几个问题:
1、谁来负责发布--开发
2、最终发布的版本谁来提供(仓库存放的版本号)--没有人,一直取最新的
3、测试有没有提交测试报告,并明确注明测试的版本--有提交测试报告,但是没有注明版本

得到了明确的答案之后,我笑着告诉他:
如果执刑人员的工作量是打10大板的话,从发布的流程来讲,应当打开发4板,打测试6板。

他问我为什么。

我反问他,为什么在测试报告不注明测试的版本号?如果你的测试报告中没有注明版本,你是否可以确定你测试的对象在一轮测试中有过更新?你每一轮针对某一产品版本的测试是否充分?
他嗯了一声,也不知道是不是真的明白了。

<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
事后,我又重新审视了这个发布过程中出现的问题,有两个点不明确:
1、测试执行中对测试对象在仓库中存放的版本号
2、产品发布中的发布版本,为什么是取最新的而不是经过测试人员测试过的
那么问题的关键不再于某个团队或是某个人出现了问题,而是整个发布过程的流程出现了问题。
团队是由具有不同职责的人组合在一起形成的,不同的人在团队中职责不同,但彼此之间相互配合,彼此工作的输入、输出物应当是衔接在一起的。一但某一输入、输出出现了空档,工作一定会出现脱节,交付的质量也就无法保证。
在这个发布过程中,测试人员没有提交最终release测试的版本号(测试的输出,发布的输入),负责发布的人在未经确认下就取最新的版本发布给客户(发布的输出),测试的输出与发布的输入出现了不一致,其结果就无法保证最终发布的输出的正确性。
有了流程,就一定要执行,流程制定出来不是摆样子的,在不断的执行过程中,我们才能发现现有流程的不足,才能不断改过。

Continuous Inprovement不是一句口号,他需要在不断的实践中得到体验和升华。

后记:关于问题的讨论
问题出来了,最急的应该是开发,但往往最急的是测试。一些不负责任的开发人员有一句很经典的话是“为什么测试当初没有发现这个问题”,对于这句话我也回一句“为什么当初开发做的时候不一次就做好,就不出错”。一些更恶劣的开发人员可能还会说“没有问题要你们测试干什么”,我的回应是“如果总是出问题,这样的开发要了做什么,造产品,还是造问题”。
有些话可能说的过激了一些,做为产品开发过程中的合作者,开发和测试不应是对立的,任何的沟通不顺畅只能造成进度的停滞和产品质量的低劣。对立的结果只能造成整个项目的失败。
问题出现了,应当积极的确认和修正问题,创造出平等和谐的开发和测试工作环境,保证问题能及时有效的修正并发布给客户。
对于不负责任的开发,测试的态度应当是坚决和肯定的,但不是对立。
我们一直在提倡开发和测试的独立,并不意味着有了专门的开发团队和测试组就是测试和开发独立了,真正的独立不是团队的独立,而是在执行过程中,能够不受控于开发或是PM,能够按照真正的测试流程执行,能够为整个产品的开发提供确实有效的状态分析和质量保证。

[ 本帖最后由 rolei 于 2008-4-9 11:30 编辑 ]

null2 发表于 2008-4-9 10:25:46

很多公司都存在的问题
页: [1]
查看完整版本: 谁之过?