常见的软件测试方法

常见的软件测试方法软件测试技术软件测试作为一个技术岗位,也是有自己的技术划分的,按照市场上常见的分类,可以分为白盒测试技术、黑盒测试技术以及介于二者之间的灰盒测试技术,每种测试技术更有自己独特的分析方法。1.白盒测试技术1)代码检查法2)静态结构分析法3)静态质量度量法4)逻辑覆盖法5)基本路径覆盖法2.黑盒测试技术1)等价类划分法2)边界值分析法3)错误推测法4)因果图法5)判定表驱动法6)正交试验法7)功能图法8)场景分析法3.灰盒测试技术…

大家好,欢迎来到IT知识分享网。常见的软件测试方法

软件测试方法

软件测试作为一个技术岗位,也是有自己圈内的技术划分的,按照市场上常见的分类,可以将软件测试分为白盒测试、黑盒测试以及介于二者之间的灰盒测试,除灰盒测试外,两种测试都有自己常见的测试方法。
1.白盒测试
白盒测试也称结构测试、透明盒测试、逻辑驱动测试或基于代码的测试,它是按照程序内部的结构测试程序,简单来说就是代码层面的测试。这一方法是指测试人员了解程序内部逻辑结构,此时的测试对象就像一个打开的盒子,测试人员依据程序内部逻辑结构相关信息对程序所有逻辑路径进行测试,确认实际的状态是否与预期一致。白盒测试在路径覆盖上一定程度是可以做到穷尽测试的。
常见的白盒测试方法分为:静态测试方法和动态测试方法。静态测试不要求在计算机上实际执行所测程序,主要是以一些人工的模拟技术对软件进行分析和测试;而动态测试是通过输入一组预先按照一定测试准则构造的实例数据来动态运行程序,从而达到发现程序错误的过程,它基本上是在计算机上实际执行了所测程序
实际工作中的白盒测试方法种类更多:
1)代码检查法
代码检查包括桌面检查、代码审查和走查等,主要检查代码和设计的一致性,代码对标准的遵循、可读性,代码逻辑表达的准确性,代码结构的合理性等方面。
2)静态结构分析法
测试者通过使用测试工具分析程序源代码的系统结构、数据结构、数据接口、内部控制逻辑等内部结构,生成函数调用关系图、模块控制流图、内部文件调用关系图、子程序表、宏和函数参数表等各类图形图表,可以清晰地标识整个软件系统的组成结构,然后通过分析这些图表。检查软件有没有存在缺陷或错误。
3)静态质量度量法
依据ISO/IEC9126质量模型作为基础,通过软件功能的六大特性(27个子特性)构造质量度量模型,用于评估软件的每个方面。
4)逻辑覆盖法
通过对程序内部逻辑结构的遍历实现程序的覆盖,逻辑覆盖标准可分为:语句覆盖(SC)、判定覆盖(DC)、条件覆盖(CC)、条件判定组合覆盖(CDC)、多条件覆盖(MCC)和修正判定条件覆盖(MCDC)。
5)基本路径覆盖法
在程序控制流图的基础上,通过分析控制结构的环路复杂性,导出基本执行路径集合,然后据此设计测试用例。
6)域测试
域测试是一种基于程序结构的测试。域测试的“域”是指程序的输入空间,任何一个被测程序都有一个输入空间,测试的理想结果就是检验输入空间中的每一个输入元素是否都产生正确的结果。域测试正是在分析输入域的基础上,选择适当的测试点以后进行测试的。
7)符号测试
符号测试的思想是允许程序的输入不仅仅是具体的数值数据,而且包含符号值,这一方法因此得名。
8)路径覆盖
着眼于路径分析的测试称为路径测试,完成路径测试的理想情况是路径覆盖。
9)程序变异
它是一种错误驱动测试,即该方法是针对某类特定错误的。
2.黑盒测试
黑盒测试也称功能测试,通过测试来检验每个功能是否都能够正常使用。测试初级人员在入职测试岗位时基本上从事的是黑盒测试,就是常说的“点点点测试”。因为测试人员不了解程序的内部结构和内部程序,因此只检查程序功能是否按照需求规格说明书的规定进行正常使用,通过模拟软件产品的最终用户使用该软件进行检查软件产品是否达到了用户的需求。黑盒测试只有采用穷举输入测试才能检查出程序中的所有错误,但是穷尽测试是不可能的,后期测试成本太高,因此需要通过测试方法进行用例量化测试。
1)等价类划分法
把程序的输入域划分为若干部分(常划分为有效部分和无效部分,也就是常说的有效等价类和无效等价类),然后从每个部分选取少数代表性数据作为测试用例,每一类的代表性数据在测试中的作用等价于这一类中的其他值。
例如测试一组输入(0,10],其中10这个数据可以作为有效值进行测试,等价于(0,10]区间内的任意输入;100可以作为无效值进行测试,等价于(0,10]区间外的任意输入。
2)边界值分析法
边界值是输入在输入边界上的取值,该方法是通过选择等价类边界的测试用例。常用于测试参数的边界值,例如测试一组输入(0,10],其中的0和10两个数据就可以作为边界值进行测试。
3)错误推测法推测
该方法更适用于有经验的测试人员,它主要是基于经验和直觉推测程序中所有可能存在的错误,从而有针对性的设计测试用例。
例如某输入条件只接受正整数,那我们就可以选取负数或小数进行验证。
4)因果图法
从用自然语言书写的程序规格说明的描述中找出因(输入条件)和果(输出或程序状态的改变)关系,通过图解的方法表示输入的各种组合关系写出判定表,从而设计相应的测试用例。
常见的因果关系有:恒等(==)、非(~)、与(V)、或(^),运用这些因果关系作好图即可得出因果关系,设计测试用例。
5)判定表驱动法
通常由条件桩(列出所有条件)、动作桩(列出所有可能的操作)、条件项(列出所有条件的取值组合)、动作项(列出在条件项的各种取值情况下应该采取的动作)四部分组成的表格。
6)正交试验设计法
使用已经造好了的正交表格来安排实验并进行数据分析的一种方法,目的是用最少的测试用例达到最高的测试覆盖率.
7)功能图法
一个程序的功能说明通常由动态说明(描述输入数据的次序或转移的次序)和静态说明(输入与输出之间的对应关系)组成,用功能图形象地表示程序的功能说明,并机械地生成功能图的测试用例。
8)场景分析法
当前的软件几乎都是由事件触发来控制流程的,事件触发时的场景便形成了场景,通过描述测试场景的方法设计测试用例即为场景分析法。
3.灰盒测试
生活中有很多的问题都不是非黑即白的,测试也一样存在自己的灰盒测试。通过字面就知道灰盒测试是介于白盒测试和黑盒测试之间的测试。工作中,它更多用于集成测试阶段,不仅关注功能输入、输出的正确性,同时也注重程序内部的运行情况。所以灰盒测试相较于黑盒测试更关注程序的内部逻辑,同时不像白盒测试那样对代码测试的详细、完整,是测试者在了解系统组件之间的相互作用,但是缺乏对内部程序功能和运作的详细了解时进行测试时的推荐方法。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/16336.html

(0)

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

关注微信