分类:
2008-09-10 09:59:49
为了更好的开展工作,需要我们在工作过程中不断积累经验、不断对过程进行改进工作。那么又该从哪些方面入手进行测试改进呢?个人分析如下:
1、增加测试需求分析
前提:用户需求搜集、软件需求分析
软件测试过程也是一个相对的开发过程,而不是机械的服从于开发过程及其过程资源,需要进行软件测试的需求分析。
测试活动需要从软件需求中理解系统行为,但不是机械的从字面上听从软件需求的内容。
测试需求分析,需要关注的不仅仅是软件需求所表现出来的特性,还需要关注软件需求之外的一些特性。
测试需求分析的目的,与软件需求分析的目的是一致的,都是为了满足用户的需求,因此,在理解软件需求之前,获取最原始的用户需求是必须的。而目前的测试,真正涉及到用户需求的不多。
测试需求分析最直接的对象很多,目前至少有2个:用户需求和软件需求,其他的涉及到软件开发过程中其他的一些对象,如,软件系统结构、软件开发技术/方法、开发语言、测试环境等,见后面的说明。
不同的测试对象和测试类型,其测试需求分析的对象和方法也是不一样的。
目前,测试需求分析并未形成一种有效的模式,也只是借鉴于软件需求分析的模式,以满足用户需求和软件需求为最终目标。
测试需求分析,基本上基于一种过程的概念,对测试对象和测试过程中所有可能涉及到的事务进行有效分析,提炼出测试的对象和范围,从而确保测试对象和过程的正确性和有效性。
测试需求分析的要素,至少包括对象、行为、过程、结果4个部分,其中后3者可以定义为对象的测试场景分析。
说明一点的是,在现在的流程中,测试计划和需求的同行评审具有了一些测试需求分析的特征
2、强化参与开发深度
前提:集成软件开发(含测试)
目前的测试,基本上只停留在对软件需求的理解之上。
而需求并不是业务。对需求的生搬硬套,就如囫囵吞枣,结果可想而知。如果对业务表现形式熟练,在测试的时候,测试的有效性就高些。而如果对业务根本不理解,那就不可能真正的测试到业务所需要满足的要求。
如何提高对业务的理解呢?只有从用户需求开始就深入的参与项目开发过程,才有可能真正的理解业务及其表现形式,从而进行有效的测试设计和执行。当然不同的测试对象和类型,所参与的深度是可以不同的。
目前要做好这一步,可能还需要很多的时间,同时也需要项目组给予更多的支持和参与。例如,项目经理、开发经理需要很明确在整个的开发过程中需要进行哪些测试(要说明预期中的结果是什么、期待发现什么问题等),需要提供哪些资源(包括相关文档、测试时间、人员配合和技能支持等)给测试人员
3、优化测试用例设计
[1]