simple,还是simple,测试的本质
上一篇 /
下一篇 2010-05-02 23:08:15 / 天气: 晴朗
/ 心情: 平静
/ 精华(1)
/ 置顶(1)
/ 个人分类:测试感悟
一直有人在问:为什么做测试?测试的目的是什么?
上网搜索这样的答案,一大堆,你都看不过来。有人说,测试的目的是寻找BUG;有人说,测试的目的是为了满足需求...但是我说,测试的目的:为了简单。
简单=设计简单+使用简单。做测试一年多了,虽然时间不长,但感悟颇多。在测试过程中,和百度、HP、微软的一些朋友聊天,但事实是,大家对测试,都在摸索阶段。
我们拿着国外的一套理论,在中国执行,我们同样沿袭着不成熟(软件测试在中国不成熟)的思考方式。那我们应该怎么去做测试?我们应该制定测试方案,也应该制定测试计划,还应该写测试用例,但为什么?我们为什么需要这些?这些,我的想法是,测试方案,是从技术上考虑,我们应该怎么测;测试计划,是从管理上去考虑,我们怎么管理测试过程。那测试用例呢?当然,一个个的case,就是为了最终的测试路径。那我们写测试用例的依据是什么?
关于测试用例,我们有太多的疑惑了,测试用例的依据?好的测试用例评估....等等。我们依据需求分析,依据开发文档,依据系统设计文档,甚至依据UI写测试用例,我们就真的足够了?不够,真的不够。需求在变,开发文档跟着变,设计文档也在改动,UI也在做变化,那我们的测试用例应该怎么写?(这个我会作为一个单独的话题拿出来写,今天先写测试的本质)
写一个测试用例,都有这么多的问题,那面对测试,我们的问题就更加多了。曾经看过一本书,书上说:你开了个商店,有人来买一个钉子,你就给他一个钉子。但是,他为什么需要钉子?因为他需要把画固定在墙上。这个时候,问题就来了,把画固定在墙上,有很多种方式。胶水、钉子、螺丝等等。所以,如果你只卖钉子,肯定满足不了用户的需求的,你应该从最根源的方向出发,然后才能挖掘更多的市场。这是从商人的角度上思考问题。
那我们做测试呢?你面对一个系统,你看到的是这个系统,还是我们面对的客户?我在每次测试的时候,我看到了系统,我也同样在考虑客户。我在想,客户为什么需要这个东西,她拿这个东西做什么?我们有没有更好的方式去解决这个问题。所以,每次做单元测试、集成测试、系统测试,我就会有不同的问题提出来,很多的建议(占据整个问题的30%),也发现了很多不如意的地方。
所以,当有人问我,你为什么要做测试。我说,测试,我喜欢,因为我面对的不只是软件,是活生生的使用者,是我们未来市场的客户。我希望他们拿到我测试过的东西,微笑着使用,这个就是我做测试的初衷也是我一直需要努力的方向。
面对客户,我们需要做什么?我们是计算机的人才,精通电脑,也精通软件,甚至有些东西我们使用到闭眼就知道怎么做,那我们的客户呢?他们知道什么?他们甚至不知道怎么装操作系统,打字也很慢,他真正需要什么东西,他也不太清楚。我们拿一个非常复杂的软件,去交付用户使用,后果会怎么样?他将付出很高的成本,我们也会派专业的人员疲于奔命。
所以,测试,最终的目的,就是用让系统最简单的满足需求。设计简单,无论谁都可以做,无论谁离开了,我们的系统依旧可以运行并且做优化;使用简单,用很短的时间,我们就可以熟练操作并且知道它为什么这么做。这个,才是测试的本质。
收藏
举报
TAG: