测试技术概述(1)

2010-02-25  毕泽明 

1,黑盒测试(功能测试)
     测试条件主要根据程序或系统的功能实现来制定。也就是说,测试人员所要求的信息是输入的数据和观察到的输出结果,但他们不知道程序或系统是怎么工作的。这一类测试包括决策表、等价类划分、范围测试、边界值测试、数据库集成测试、因果图、正交阵列测试、阵列和表测试、异常测试、极限测试、随机测试。黑盒测试的一个主要的优点就是测试活动本身的行为要与程序或系统的设计行为相吻合,是正常的一些操作,并且容易被大家所理解。限制就是测试全部的、无遗漏的输入流是不大可能的。而且内部的一些逻辑问题也难以测试出来,而这可能是致命的。
2,白盒测试(结构测试)
    指测试情景主要是针对逻辑路径来设计的。测试数据根据对程序或系统的逻辑检查来确定,而不关心程序或系统的需求。这一类别中的测试包括基本路径分析、语句覆盖、分支覆盖、条件覆盖、分支/条件覆盖。白盒测试的一个优点是测试比较彻底,并且侧重于已经开发出来的代码。致命的错误或代码缺陷也可以检查出来。缺点是不能验证需求的正确性。白盒测试的另外一个缺点是无法检验代码中遗留的路径和数据敏感性错误。例如程序中的代码语句应该写成“if|a-b|<10”却写成了"if(a-b)<10"
3,灰盒测试
    灰盒测试是黑盒测试和白盒测试的有机结合。测试人员需要研究需求,然后与开发人员沟通并理解系统的内部结构。目的是整理一些不明确的需求规格,掌握程序的逻辑以设计引申的测试。其实灰盒测试有时候是需要的,比如说我们要测试一个功能,当命令行包含7个可能的参数:param1,param2,param3,param4,param5,param6,param7。理论上需要进行7!即5040次不同的测试,如果一些参数可选的话,就更加复杂了。如果采用灰盒测试,通过与开发人员交流,如果每个参数都是独立的话,只需要7次测试就可以满足要求了。
3.1,手工测试与自动测试
    手工测试类别的分类根据该类测试不是由人在计算机上执行的。这一类别的例子包括结构化走查、检查、JAD和桌面检查。自动化测试类别的分类根据是该类测试是在计算机上执行的。例如边界值测试、分支覆盖测试、原型法和语法测试。语法测试是由一个语言编译器来实现的,而语言编译器是在计算机上执行的。
3.2,静态测试与动态测试
    静态测试方法是与时间无关的,不需要被测试件产品的手工执行或自动执行。例子包括语法检查、架构化走查和代码检查。动态测试具有时间依赖性,包含了在纸面上或在计算机上对一些指令的执行,例子包括结构化走查,在架构化走查过程中程序逻辑通过一步一步的执行代码而被模拟出来,并且使用口头描述加以配合。边界值测试也是动态测试技术,要求测试用例在计算机上执行,特别要关注与程序的输入和输出相关联的边界值。
 
有一些名词,其实可以上网搜索一下,呵呵
503°/5019 人阅读/2 条评论 发表评论

金鑫  2010-02-25

老毕开专题了 hoho


田庆希  2010-02-26

可不可以写写正交阵列测试,一直都没有弄懂过


登录 后发表评论