软件测试方法-详解

哈哈哈,知乎 是本人的

软件测试方法划分:

按执行阶段:白盒测试、黑盒测试、灰盒测试

按执行状态:静态测试、动态测试

按执行行为:手工测试、自动化测试

白盒测试:白盒测试(White Box Testing)又称结构测试、逻辑驱动测试或基于代码的测试,主要检查产品内部结构是否按照规格说明书的规定正常运行。白盒测试是一种测试用例设计方法,盒子指的是被测试的软件,白盒顾名思义是指盒子是可视的,观察者清楚盒子内部的东西以及里面是如何运作的,因此,白盒测试需要测试人员对系统内部的结构和工作原理有一个清楚的了解。

黑盒测试:黑盒测试(Black Box Testing)也称功能测试,主要来检测每个功能是否都能正常使用。它也是在软件测试中使用最广泛的一类测试。

在黑盒测试中,通常把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,对程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。

主要测试的是功能需求和接口

灰盒测试:灰盒测试,是介于白盒测试与黑盒测试之间的一种测试,灰盒测试多用于集成测试阶段,不仅关注输出、输入的正确性,同时也关注程序内部的情况。灰盒测试不像白盒那样详细、完整,但又比黑盒测试更关注程序的内部逻辑,常常是通过一些表征性的现象、事件、标志来判断内部的运行状态。

测试中的重点就是黑盒测试,下面我们来讲讲黑盒测试的几种常用方法

黑盒测试方法:

等价类划分法边界值分析法

判定表分析法

因果图分析法

正交试验法

场景分析法

错误推测法

等价类划分法:

等价类划分一般划分为两种情况:有效等价类和无效等价类。

有效等价类:对需求规格说明而言,合理的、有效的输入数据构成的集合。

无效等价类:对需求规格说明而言,不合理的、无效的输入数据构成的集合。

等价类划分举例:

注册用户名的长度限制6~18个字符,6~18个字符是有效等价类,小于6个字符和大于18个字符则是两个无效等价类。

注册用户名的格式要求必须以字母开头时,以字母开头是有效等价类,非字母开头则是无效等价类。

在注册用户时需要遵循协议或条款是否接受时,“接受”是有效等价类,“不接受”则是无效等价类。

密码要求首位必须是大写字母的,首字母大写是有效等价类,首位小写字母的、首位为数字的或首位为特殊字符的则是无效等价类。

假设:测试某 页一个年龄的输入框(年龄的取值范围:20-99的整数)

我们先把区域划分出来:

无效等价类有效等价类无效等价类无效等价类

然后从每个区域中取少数有代表性的数据测试即可。

边界值分析法:

边界值分析法是对等价类划分法的一个补充,该方法不仅需要考虑输入域的边界,而且还要关注输出域的边界。由长期的测试工作经验得知,大量的错误发生在输入和输出范围的边界上。因此针对各种边界情况设计用例,可以查出更多的错误。

假设:测试某 页一个年龄的输入框(年龄的取值范围:20-99的整数)

边界值:19、20、21、98、99、100

判定表分析法:

在等价类设计法中,没有考虑输入域的组合情况,导致设计的用例中无法覆盖输入域之间存在关联的地方。为了弥补等价类设计的不足,这里介绍一种新的用例设计方法——判定表分析法。判定表分析法主要是分析和表达多种输入条件下系统执行不同动作的技术。在程序设计发展的初期,判定表就已被当作编写程序的辅助工具了,它可以把复杂的逻辑关系和多种条件组合的情况表达得很明确。判定表由四个部分组成。

1)条件桩:列出被测对象的所有输入,并列出输入条件与次序无关。

2)动作桩:列出输入条件系统可能采取的操作,这些操作的排序顺序没有约束。

3)条件项:列出输入条件的其他取值,在所有可能情况下的真假值。

4)动作项:列出在条件项的各种取值情况下应采取的动作。

判定表

因果图分析法:

在利用判定表设计用例的过程中,如果条件过多,导致设计判定表比较困难。为了弥补该缺点,接下来介绍一种新的测试用例设计方法——因果图分析法。

因果图分析法是分析输入条件之间的约束情况,然后生成判定表,进行用例设计。下面介绍一下因果图的基本图形符 :因果符 和约束符 。

因果符 :因果是指输入和输出的因果关系。因果符 有恒等、非、或、与四种表示方法,如图所示,其中c1表示输入的状态,即原因、e1表示输出的状态,即结果。c1和e1均可取值0或1(0表示某状态不出现,1表示某状态出现)。

恒等:当输入条件发生时,则一定会产生对应的输出;相反当输入条件不发生时,则不产生对应的输出。即c1为1时,e1一定为1;否则c1为0,e1一定为0;

:与恒等相反,当输入条件发生时,则不产生对应的输出;反之亦然。即c1为1时,e1一定为0;否则c1为0,e1一定为1;

:当输入多个条件时,只要有其中一个条件发生,则产生对应的输出。即只要c1、c2、c3其中一个为1,则e1为1;只有c1、c2、c3全部为0时,e1才为0;

:当输入多个条件时,只有所有的输入条件发生时,才会产生对应的输出。即c1、c2都为1时,e1才为1;只要c1、c2其中一个为0,e1为0。

约束符

约束是指输入与输入之间存在的某些依赖关系,称为约束。约束符 有异、或、唯一、要求、强制五种表示方法,其中前面四种是针对输入条件的约束,最后一种强制只针对输出条件的约束。

其中a,b分别代表条件。条件的取值0或1(0表示某状态不出现,1表示某状态出现)。

:在所有输入条件中,至多有一个可能不发生。即图4-11中,a和b最多只有一个为1,不能同时为1,但可以同时为0。

:在所有输入条件中,至少有一个发生。即图4-11中,a、b、c最少有一个为1,不能同时为0,但可以同时为1。

唯一:在所有输入条件中,有且只有一个发生。即图4-11中,a和b,只有一个为1,不能同时为1,也不能同时为0。

要求:在所有输入条件中,只要有一个发生,则要求其他条件也发生。即图4-11中,a和b,a为1时,要求b也为1。

强制:是针对结果的约束关系,当一个结果发生,强制另一个结果不发生。

正交试验法:

正交试验法是从大量的试验点中挑选出适量的、有代表性的点,应用依据迦罗瓦理论导出的“正交表”,合理的安排试验的一种科学的试验设计方法。它是根据正交性从全面试验中挑选出部分有代表性的点进行试验,这些有代表性的点具备了“均匀分散,齐整可比”的特点,是研究多因素多层次采样点的一种设计方法,正交试验设计是一种基于正交表的、高效率、快速、经济的试验设计方法。

正交试验中常用的术语有指标、因子、因子状态三个。

指标:通常把判断试验结果优劣的标准叫做试验的指标。

因子:把所有影响试验指标的条件称为因子。

因子的状态:把影响试验因子称为因子的状态。

流程分析法:

流程分析法也称场景法,主要是针对测试场景类型。它是从白盒测试设计方法中的路径覆盖分析法演变过来的一种重要的方法。在白盒测试中,路径就是指函数代码的某个分支组合,路径覆盖法需要构造足够的用例覆盖函数的所有代码路径。在黑盒测试中,若将软件系统的某个流程看成路径的话,则可以针对该路径使用路径分析的方法设计测试用例。

基本流:是指程序的主流程,是实现业务流程最简单的路径。

备选流:是指实现业务流程时,因错误操作或者是异常操作,导致最终未达到目的流程。

错误推测法:

在软件测试中,基于经验和直觉推测程序中可能存在的各种错误,从而有针对性的设计测试用例的方法,就是错误推测法。它的基本的设计思路就是分析程序中最易出错的场景和情况,在此基础上有针对性的设计测试用例。

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年6月3日
下一篇 2021年6月4日

相关推荐