黑盒测试的实用技术

上传人:woxinch****an2018 文档编号:57241903 上传时间:2018-10-20 格式:PPT 页数:42 大小:231KB
返回 下载 相关 举报
黑盒测试的实用技术_第1页
第1页 / 共42页
黑盒测试的实用技术_第2页
第2页 / 共42页
黑盒测试的实用技术_第3页
第3页 / 共42页
黑盒测试的实用技术_第4页
第4页 / 共42页
黑盒测试的实用技术_第5页
第5页 / 共42页
点击查看更多>>
资源描述

《黑盒测试的实用技术》由会员分享,可在线阅读,更多相关《黑盒测试的实用技术(42页珍藏版)》请在金锄头文库上搜索。

1、第3章 黑盒测试的实用技术黑盒测试技术是软件测试的主要方法之一,黑盒测试的基本概念、方法、操作步骤、工具等内容是必须掌握的,本章重点讨论以下内容:,软件测试技术研究组 中国信息大学, 黑盒测试的基本概念; 黑盒测试方法; 黑盒测试的原则、策略和方法的选择; 黑盒测试步骤。,软件测试技术研究组 中国信息大学,3.1 黑盒测试的基本概念黑盒测试(Black-Box Testing)又称为数据驱动测试或基于规格说明的测试。黑盒测试就是把程序看作一个不能打开的黑盒子,不考虑程序内部逻辑结构和内部特性的情况下,测试程序的功能,测试者要在软件的接口处进行,它只检查程序功能是否按照规格说明书的规定正常使用,

2、程序是否能接收输入数据而产生正确的输出信息,以及性能是否满足用户的需求,并且保持数据库或外部信息的完整性。通过测试来检测每个功能是否都能正常运行,因此黑盒测试又可称为从用户观点和需求进行出发的测试。,软件测试技术研究组 中国信息大学,由于黑盒测试不考虑程序内部结构,只关心软件的功能,所以许多高层的测试如确认测试、系统测试、验收测试都采用黑盒测试。在设计黑盒测试用例可以和软件实现同时进行,因此可以压缩整个测试的时间。 黑盒测试主要是为了发现以下几类错误: 是否有不正确或遗漏的功能? 界面是否有错误? 在接口上,输入能否正确地接受?能否输出正确的结果?,软件测试技术研究组 中国信息大学, 是否有数

3、据结构错误或外部数据库访问错误? 性能上是否满足要求? 初始化或终止性错误? 从事黑盒测试的技术人员,从概念上需要注意下述内容。,软件测试技术研究组 中国信息大学,3.1.1 黑盒测试的优点和缺点 1. 黑盒测试的优点: 从产品功能角度测试可以最大程度满足用户的需求。 相同动作可重复执行,最枯燥的部分可由机器完成。 依据测试用例针对性地找寻问题,定位更为准确,容易生成测试数据。 将测试直接和程序/系统要完成的操作相关联。,软件测试技术研究组 中国信息大学,2. 黑盒测试的缺点: 代码得不到测试。 如果规格说明设计有误,很难发现。 测试不能充分的进行。 结果取决于测试用例的设计。,软件测试技术研

4、究组 中国信息大学,3.1.2 黑盒测试人员的要求黑盒测试只关心软件的外部功能和界面表现,不接触代码,为了保证测试工作顺利进行,在合理的时间内完成测试,发现软件系统的缺陷,掌握测试用例的书写,保证测试结果的可靠性,在对黑盒测试人员的选择和要求也要符合一定的标准: 掌握测试思想和常规测试流程; 了解产品的需求和功能; 掌握测试用例的书写; 有一定的软件开发和测试经验。,软件测试技术研究组 中国信息大学,3.1.3 黑盒测试的意义 黑盒测试对于测试工作的意义主要有: 1. 黑盒测试有助于对被测产品进行总体功能的需求进行验证; 2. 从测试管理来说,黑盒测试是非常方便的,不需要对代码进行测试管理;

5、3. 黑盒测试是把所有可能的输入都作为测试数据使用的,容易查出程序中的错误。,软件测试技术研究组 中国信息大学,3.2 黑盒测试方法因为黑盒测试一种基于证明功能需求和用户最终需求的测试方法,所以在选择测试设计测试方法方面一般有如下几种。 黑盒测试技术设计用例方法: 等价类划分法; 边界值分析法; 因果图法; 判定表驱动测试;,软件测试技术研究组 中国信息大学, 场景法; 功能图法; 错误推测法; 正交试验设计法。在实际测试工作中,往往是综合使用各种方法才能有效提高地提高测试效率和测试覆盖率,这就需要认真掌握这些方法的原理,积累更多的测试经验,以有效地提高测试水平和测试的效率。通常在确定测试方法

6、是,应遵循以下原则和策略。,软件测试技术研究组 中国信息大学,原则: 根据程序的需求和一旦发生故障将造成的损失来确定测试的优先级和测试重点。 根据功能需求认真制定测试策略,尽可能少的使用测试用例,减少测试的工作量,发现更多的程序错误。 在任何情况下都必须采用边界值分析法。这种方法设计出的测试用例发现程序错误的能力最强。,软件测试技术研究组 中国信息大学,(2) 策略: 首先进行等价类划分,包括输入条件和输出条件的等价划分,将无限测试变成有限测试,这是减少工作量和提高测试效率最有效的方法。 在任何情况下都必须使用边界值分析方法。经验表明,用这种方法设计出的测试用例发现程序错误的能力最强。 可以用

7、错误推测法追加一些测试用例,这需要依靠测试工程师的智慧和经验。 对照程序逻辑,检查已设计出的测试用例的逻辑覆盖程度。如果没有达到要求的覆盖标准,应当再补充足够的测试用例。,软件测试技术研究组 中国信息大学, 如果程序的功能说明中含有输入条件的组合情况,则一开始就可选用因果图法和判定表驱动法。 对于参数配置类的软件,要用正交试验法选择较少的组合方式达到最佳效果。 功能图法也是很好的测试用例设计方法,我们可以通过不同时期条件的有效性设计不同的测试数据。 对于业务流清晰的系统,可以利用场景法贯穿整个测试案例过程,在案例中综合使用各种测试方法。,软件测试技术研究组 中国信息大学,3.2.1 等价类划分

8、等价类划分法是一种典型的、重要的黑盒测试方法,它将程序所有可能的输入数据(有效的和无效的)划分成若干个等价类。然后从每个部分中选取具有代表性的数据当作测试用例进行合理的分类,测试用例由有效等价类和无效等价类的代表组成,从而保证测试用例具有完整性和代表性。,软件测试技术研究组 中国信息大学,1. 等价类划分 等价类划分可以分为有效等价类和无效等价类。 (1)有效等价类 有效等价类指对于程序规格说明来说,是合理的、有意义的输入数据构成的集合。利用它,可以检验程序是否实现了规格说明预先规定的功能和性能。有效等价类可以是一个,也可以是多个。根据系统的输入域划分若干部分,然后从每个部分中选取少数代表性数

9、据当做数据测试的测试用例,等价类是输入域的集合。,软件测试技术研究组 中国信息大学,(2 )无效等价类无效等价类和有效等价类相反,无效等价类是指对于软件规格说明而言,没有意义的,不合理的输入数据集合,利用无效等价类,可以找出程序异常说明情况,检查程序的功能和性能的实现是否有不符合规格说明要求的地方。,软件测试技术研究组 中国信息大学,2. 等价类划分的方法和原则。 (1)方法 按区间划分。 按数值划分。 按数值集合划分。 按限制条件或规划划分。 按处理方式划分。 (2)原则 在输入条件规定取值范围或值的个数情况下,则可以确定一个有效等价类和两个无效等价类。 在规定了输入数据的一组值中(假定n个

10、),并且程序要对每个输入值分别处理的情况下,可以确定n个有效等价类和一个无效等价类。,软件测试技术研究组 中国信息大学,等价类表的建立 等价类表的建立如表3-1所示。,软件测试技术研究组 中国信息大学,4等价类表与测试用例的关系 等价类表与测试用例的关系如表3-2所示。,软件测试技术研究组 中国信息大学,3.2.2 边界值分析方法 边界值分析法BVA(Boundary Value Analysis)用于对输入或输出的边界值进行测试的一种黑盒测试方法。 选择边界值测试原则 选择边界值测试主要考虑以下几条原则: (1)如果输入条件规定了值的个数,则用最大个数、最小个数、比最小个数少一个、比最大个数

11、多一个的数作为测试数据。 (2)如果输入条件规定了值的范围,则应取刚达到这个范围的边界值,以及刚刚超过这个范围边界的值作为测试输入数据。 (3)如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构的边界上的值作为测试用例。,软件测试技术研究组 中国信息大学,2常见的边界值 常见的边界值通常表现在如界面屏幕、数组、报表和循环等。它的表现的方式: (1)屏幕上光标在最左上、最右下位置 (2)数组元素的第一个和最后一个。 (3)报表的第一行和最后一行。 (4)循环的第0次、第1次、倒数第2次、最后一次。,软件测试技术研究组 中国信息大学,3.2.3 因果图法因果图法也是较常用的一种黑盒测试方

12、法,是一种简化了的逻辑图。因果图能直观地表明输入条件和输出动作之间的因果关系,能帮助测试人员把注意力集中到与程序功能有关的那些输入组合,比采用等价分类法有更高的测试效率,但这种方法的操作步骤比较复杂。采用因果图法能帮助我们按照一定的步骤选择一组高效的测试用例,同时,还能指出程序规范中存在什么问题,鉴别因果图,制作因果图。,软件测试技术研究组 中国信息大学,3.2.4 判定表驱动法因果图方法中已经用到了判定表(Decision Table)是分析和表达多逻辑条件下执行不同操作的情况下的工具.在程序设计发展的初期,判定表就已被当作编写程序的辅助工具了.由于判定表测试严格,能够将复杂的逻辑关系和多种

13、条件组合的情况表达得既具体又明确。针对不同的逻辑条件组合值,分别执行不同的操作。因此,使用判定表能够设计书完整的测试用例集合。判定表一种针对存在条件、动作关系或者因果关系的特性测试的用例设计方法。,软件测试技术研究组 中国信息大学,1判定表的组成: 判定表通常由4个部分组成,如图3-6所示。,软件测试技术研究组 中国信息大学,图3-6 判定表4个组成部分,3.2.5 场景法现在的软件几乎都是用事件触发来控制流程的,事件触发时的情景便形成了场景,而同一事件不同的触发顺序和处理结果就形成事件流。这种在软件设计方面的思想也可以引入到软件测试中,可以比较生动地描绘出事件触发时的情景,有利于测试设计者设

14、计测试用例,同时使测试用例更容易理解和执行。,软件测试技术研究组 中国信息大学,场景法的基本流和备选流场景用来描述流经用例的路径,从用例开始到结束遍历这条路径上所有的基本流和备选流如图3-7所示。,软件测试技术研究组 中国信息大学,图3-7 场景法的基本流和备选流,如上图(3-7)所示:图中经过用例的每条路径都用基本流和备选流来表示,直黑线表示基本流,是经过用例的最简单路径;备选流用不同的色彩表示,一个备选流可能从基本流开始,在某个特定条件下执行。 可能重新加入基本流中(如备选流1和3); 也可能从另一个备选流(如备选流2); 或者终止用例而不再重新加入到某个流(如备选流2和4);,软件测试技

15、术研究组 中国信息大学,3.2.6 功能图法功能图分析法是用功能图形象地表示程序的功能说明,由状态迁移图和布尔函数组成,同时需要依靠判定表或因果图表示的逻辑功能,并机械地生成功能图的测试用例,功能图方法是黑盒、白盒混合用例的设计方法。,软件测试技术研究组 中国信息大学,3.2.7 错误推测法基于以往经验和直觉来,参照以往的软件系统出现的错误,推测程序中所有可能存在的各种缺陷和错误,从而有针对性地设计测试用例。错误推错法的基本思路是:列举出程序中所有可能有的错误和容易发生错误的特殊情况,根据可能出现的错误情况选择测试用例。,软件测试技术研究组 中国信息大学,3.2.8正交试验设计法黑盒测试方法正

16、交试验设计法:通过正交试验理论来指导测试用例的选取,以便能够用较少的测试用例使测试充分,本方法在系统测试用例的设计中不常用。正交试验设计法依据Galois理论,从大量的(实验)数据(测试用例)中挑选适量的,有代表性的点(例),从而合理地安排实验(测试)的一种科学实验设计方法。改变了尺寸,测试程序都能自动地处理。,软件测试技术研究组 中国信息大学,3.3 黑盒测试的原则、策略和方法的选择黑盒测试作为以一种测试方法,随着软件开发速度的加快,用户的需求变化趋势加快,测试的方法需要不断地调整应用,所以要对软件有更加严格的测试,不断变化的需求将导致不同的功能产生,每个功能都需要对它进行测试。另外,由于黑盒测试不涉及内部结构和代码知识,而是根据规格说明书进行的,因此在选择测试方法方面要考虑以下原则和策略。,软件测试技术研究组 中国信息大学,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号