根据被测对象信息不同来分类软件测试

网友投稿 802 2022-11-12

本站部分文章、图片属于网络上可搜索到的公开信息,均用于学习和交流用途,不能代表睿象云的观点、立场或意见。我们接受网民的监督,如发现任何违法内容或侵犯了您的权益,请第一时间联系小编邮箱jiasou666@gmail.com 处理。

根据被测对象信息不同来分类软件测试

1、白盒测试

1)概念(定义):是依据被测软件分析程序内部构造,并根据内部构造分析用例,来对内部控制流程进行测试,可完全不顾程序的整体功能实现情况,即已知软件产品的内部实现过程,可以通过测试证明每种内部操作是否符合设计规格的要求,所有内部成分是否已经过检查。

2)思想:白盒测试又被称为玻璃盒测试、透明盒测试、开放盒测试、结构化测试、逻辑驱动测试、是基于程序结构的逻辑驱动测试。

3)测试对象: 函数、算法与数据结构

4)目的

(1)一般在测试前期进行,通过达到一定的逻辑覆盖率指标,使得软件内部逻辑控制结构上的问题能基本得到消除;

(2)保证内部结构达到一定的覆盖程度,能够给予软件代码质量更大的保证;

(3)白盒测试发现问题后,解决问题的成本较低。

5)白盒测试的常用技术:

(1)静态分析:包括控制流分析、数据流分析、信息流分析

(2)动态分析:逻辑覆盖测试(分支测试、路径测试等)、程序插装等

逻辑覆盖测试根据覆盖的对象不同,可以分为:语句覆盖、判定(分支)覆盖、条件覆盖、判定条件覆盖、条件组合覆盖、路径覆盖。

程序插装指调试程序时,在程序中插入一些打印语句,程序执行时打印出我们关心的信息,通过这些信息了解执行过程中程序的一些动态行为。

逻辑覆盖率的统计通过程序插装来实现。

6)白盒测试的特点:

(1)测试人员需要了解软件的实现;

(2)可以检测代码中的每条分支和路径;

(3)揭示隐藏在代码中的错误;

(4)对代码的测试比较彻底;

(5)实现代码结构上的优化;

(6)投入较大,成本高;

(7)无法检测代码中遗漏的路径和数据敏感性错误;

(8)不验证规格的正确性。

2、黑盒测试

1)定义:把测试对象看成是一个黑盒,只考虑其整体特性,不考虑其内部具体实现过程。即已知产品的需求规格,但不知其内部实现,可以进行测试证明每个需求是否实现。

2)思想:基于规格的测试,测试类型都来源于质量模型。

3)测试对象:系统、子系统、模块、子模块、函数等。

4)常用的黑盒测试方法:等价类划分法、边界值分析法、因果图分析法、判定表法、状态迁移法等。

5)目的:减少测试时的测试用例数,用尽量少的测试用例完成测试,发现更多的问题。

6)黑盒测试的特点

(1)对于更大的代码单元来说(子系统甚至系统级)比白盒测试效率要高;

(2)测试人员不需要了解软件的实现细节,包括特定的编程语言;

(3)从用户的视角进行测试,很容易被理解和接受;

(4)有助于暴露任何规格不一致或有歧义的问题;

(5)没有清洗和简明的规格,测试用例很难设计;

(6)不能控制内部执行路径,会有很多内部程序路径没有被测试到;

(7)不能直接针对特定的程序段,这些程序可能非常复杂(因此可能隐藏更多的问题)

3、灰盒测试

利用被测对象的整体特性信息,采用黑盒测试方法;利用被测对象的内部具体实现信息,采用白盒测试方法;介于白盒和黑盒测试之间的测试方法测试方法称之为灰盒测试。

1)定义:如果即利用被测对象的整体特性信息,又利用被测对象的内部具体实现信息,采用得就是灰盒测试方法。两种信息占得比例不同,相应的灰度就不同。

2)适用对象:一般集成测试采用灰盒测试方法。

上一篇:按照被测试的软件系统是否运行来分类软件测试
下一篇:通用测试用例写作规范
相关文章

 发表评论

暂时没有评论,来抢沙发吧~