2007年测试经验总结之测试需求和测试用例
上一篇 / 下一篇 2008-01-09 17:58:30 / 个人分类:测试用例
2007年测试经验总结
测试需求和测试用例51Testing软件测试网}S!Jp9j7z;Dv0p.o
前言:2007年已经过去了,感觉有必要把2007年中每天日志中记录的测试经验进行下整理,于是产生了“2007年测试经验总结”日志系列,里面的内容基本上都是在日复一日的工作中体会到的,编写的主要目的也是方便自己的经验积累,反复的推敲和深入。51Testing软件测试网-h4qA,~*b,M
CoX(@t+?0
一.测试需求51Testing软件测试网 Wc1IQ%bf oB
1. 什么是测试需求?
\8I#y;aF*P{#@0测试需求就是指明哪些需要测试(哪些正确的规则下产生的正确结果是什么?这些规则包括:有效等价类的规则、算法的规则、可配置的规则、其他的限定条件、数值范围。这些规则点有部分是从需求文档中获得的,另外有部分是从代码或开发人员口中获取的,剩下的是被人们遗漏的或不明确或常识性的规则而被测试人员发现的。),颗粒程度为刚好能运用测试方法设计出对应的测试用例即可。所以,除了需求文档,还有设计中的一些规则也是需要测试的。但是设计规则要从开发文档中去寻找,如果没有,则我会从源代码注释中去挖掘设计上的测试需求(还有测试用例)。需求文档中写的每一句话并不是都可以成为测试需求,有些需求不需要测试(比如说设计模式已经满足了,或者是显而易见的界面需求,或者是以前就拥有的功能)。总之,测试需求主要来源于两个方面:用户需求、开发文档(或代码注释或从代码中挖掘)51Testing软件测试网9@$s;Z \&?Y\
2. 测试需求和测试用例的区别51Testing软件测试网d%Ov.K?m-wX8[
测试需求,以前我把它称之为规则点(还有人称之为测试点),测试需求和测试用例的区别在于,测试用例的设计就是在每个测试需求的基础上运用各种测试方法得出的。也就是说测试需求说明业务或设计中每个最小功能点(小到不能再细分为止)的每条规则要求,而测试用例则包括了符合或不符合这条规则的多种情况,一般来说,一个测试需求对应一个或多个测试用例,而每个测试用例有一条或多条测试数据。(注:像业务流程类的大功能,无法再细分成没有关系的更小的功能点,所以,业务流程的分支条件和其对应的流程处理逻辑规则就是测试需求了。)51Testing软件测试网?+t(h"DSK_H
3.测试需求、测试用例和测试策略的关系
测试需求是指明“测什么”,而测试用例则是指明“怎么测”。测试策略是一个大体的“测什么”和“怎么测”的框架,采用什么测试方法来回答“测什么”和“怎么测”。而测试需求和测试用例是将测试策略更细分了。测试一个任务时,一定要明确三个要素:“测什么”,“设计是如何实现的”,“怎么测”。51Testing软件测试网Vg'JS'WLC&K
4。其他51Testing软件测试网g&r1X1Uf
开发人员如果有心的话,会给你测试建议和测试范围,但是我们自己在设计测试用例的时候,一定要大于他们提供的范围,特别是测试需求一定要弄清楚。
二.测试用例的设计和执行
I0HF!Jd;].wG01. 明确测试用例的输入和输出,不仅仅关注界面上的输入和输出。
3G2c1Dv+m]m#Gq o0相对与被测试的模块来说,除了界面上的输入和输出(键盘、鼠标、屏幕),还有文件、共享内存、网络上的输入和输出,这些都是,而且有很多严重BUG的发现都和这些界面上看不到的输入输出有关系(经验告诉我)。所以,我自己总结的测试用例一般包括四个元素:输入(或动作)、输出、参数、状态。参数和状态是指一些系统内部数据的输入,参数就例如某个配置项例如某个配置条件,状态就例如数据库中的某表中的相关数据。