黑盒测试的实用技术.ppt
《黑盒测试的实用技术.ppt》由会员分享,可在线阅读,更多相关《黑盒测试的实用技术.ppt(42页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第3章章 黑盒测试的实用技术黑盒测试的实用技术 黑盒测试技术是软件测试的主要方法黑盒测试技术是软件测试的主要方法之一,黑盒测试的基本概念、方法、操作之一,黑盒测试的基本概念、方法、操作步骤、工具等内容是必须掌握的,本章重步骤、工具等内容是必须掌握的,本章重点讨论以下内容:点讨论以下内容:软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学 黑盒测试的基本概念;黑盒测试的基本概念;黑盒测试方法;黑盒测试方法;黑盒测试的原则、策略和方法的选择;黑盒测试的原则、策略和方法的选择;黑盒测试步骤。黑盒测试步骤。软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学3.1 黑盒测试的基
2、本概念黑盒测试的基本概念 黑盒测试(黑盒测试(黑盒测试(黑盒测试(Black-Box TestingBlack-Box Testing)又称为数据驱)又称为数据驱)又称为数据驱)又称为数据驱动测试或基于规格说明的测试。黑盒测试就是把程序动测试或基于规格说明的测试。黑盒测试就是把程序动测试或基于规格说明的测试。黑盒测试就是把程序动测试或基于规格说明的测试。黑盒测试就是把程序看作一个不能打开的黑盒子,不考虑程序内部逻辑结看作一个不能打开的黑盒子,不考虑程序内部逻辑结看作一个不能打开的黑盒子,不考虑程序内部逻辑结看作一个不能打开的黑盒子,不考虑程序内部逻辑结构和内部特性的情况下,测试程序的功能,测试
3、者要构和内部特性的情况下,测试程序的功能,测试者要构和内部特性的情况下,测试程序的功能,测试者要构和内部特性的情况下,测试程序的功能,测试者要在软件的接口处进行,它只检查程序功能是否按照规在软件的接口处进行,它只检查程序功能是否按照规在软件的接口处进行,它只检查程序功能是否按照规在软件的接口处进行,它只检查程序功能是否按照规格说明书的规定正常使用,程序是否能接收输入数据格说明书的规定正常使用,程序是否能接收输入数据格说明书的规定正常使用,程序是否能接收输入数据格说明书的规定正常使用,程序是否能接收输入数据而产生正确的输出信息,以及性能是否满足用户的需而产生正确的输出信息,以及性能是否满足用户的
4、需而产生正确的输出信息,以及性能是否满足用户的需而产生正确的输出信息,以及性能是否满足用户的需求,并且保持数据库或外部信息的完整性。通过测试求,并且保持数据库或外部信息的完整性。通过测试求,并且保持数据库或外部信息的完整性。通过测试求,并且保持数据库或外部信息的完整性。通过测试来检测每个功能是否都能正常运行,因此黑盒测试又来检测每个功能是否都能正常运行,因此黑盒测试又来检测每个功能是否都能正常运行,因此黑盒测试又来检测每个功能是否都能正常运行,因此黑盒测试又可称为从用户观点和需求进行出发的测试。可称为从用户观点和需求进行出发的测试。可称为从用户观点和需求进行出发的测试。可称为从用户观点和需求进
5、行出发的测试。软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学 由于黑盒测试不考虑程序内部结构,只关由于黑盒测试不考虑程序内部结构,只关心软件的功能,所以许多高层的测试如确认测心软件的功能,所以许多高层的测试如确认测试、系统测试、验收测试都采用黑盒测试。在试、系统测试、验收测试都采用黑盒测试。在设计黑盒测试用例可以和软件实现同时进行,设计黑盒测试用例可以和软件实现同时进行,因此可以压缩整个测试的时间。因此可以压缩整个测试的时间。黑盒测试主要是为了发现以下几类错误:黑盒测试主要是为了发现以下几类错误:是否有不正确或遗漏的功能?是否有不正确或遗漏的功能?界面是否有错误?界面是否有错误
6、?在接口上,输入能否正确地接受?能否输出在接口上,输入能否正确地接受?能否输出正确的结果?正确的结果?软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学 是否有数据结构错误或外部数据库访是否有数据结构错误或外部数据库访问错误?问错误?性能上是否满足要求?性能上是否满足要求?初始化或终止性错误?初始化或终止性错误?从事黑盒测试的技术人员,从概念上需要从事黑盒测试的技术人员,从概念上需要注意下述内容。注意下述内容。软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学3.1.1 黑盒测试的优点和缺点黑盒测试的优点和缺点1.黑盒测试的优点:黑盒测试的优点:从产品功能角度测试可以最
7、大程度满足用户从产品功能角度测试可以最大程度满足用户的需求。的需求。相同动作可重复执行,最枯燥的部分可由机相同动作可重复执行,最枯燥的部分可由机器完成。器完成。依据测试用例针对性地找寻问题,定位更为依据测试用例针对性地找寻问题,定位更为准确,容易生成测试数据。准确,容易生成测试数据。将测试直接和程序将测试直接和程序/系统要完成的操作相关系统要完成的操作相关联。联。软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学2.黑盒测试的缺点:黑盒测试的缺点:代码得不到测试。代码得不到测试。如果规格说明设计有误,很难发现。如果规格说明设计有误,很难发现。测试不能充分的进行。测试不能充分的进行。
8、结果取决于测试用例的设计。结果取决于测试用例的设计。软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学3.1.2 黑盒测试人员的要求黑盒测试人员的要求 黑盒测试只关心软件的外部功能和界面表黑盒测试只关心软件的外部功能和界面表现,不接触代码,为了保证测试工作顺利进行,现,不接触代码,为了保证测试工作顺利进行,在合理的时间内完成测试,发现软件系统的缺在合理的时间内完成测试,发现软件系统的缺陷,掌握测试用例的书写,保证测试结果的可陷,掌握测试用例的书写,保证测试结果的可靠性,在对黑盒测试人员的选择和要求也要符靠性,在对黑盒测试人员的选择和要求也要符合一定的标准:合一定的标准:掌握测试思想
9、和常规测试流程掌握测试思想和常规测试流程;了解产品的需求和功能了解产品的需求和功能;掌握测试用例的书写掌握测试用例的书写;有一定的软件开发和测试经验。有一定的软件开发和测试经验。软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学3.1.3 黑盒测试的意义黑盒测试的意义黑盒测试对于测试工作的意义主要有:黑盒测试对于测试工作的意义主要有:1.黑盒测试有助于对被测产品进行总体功能的黑盒测试有助于对被测产品进行总体功能的需求进行验证;需求进行验证;2.从测试管理来说,黑盒测试是非常方便的,从测试管理来说,黑盒测试是非常方便的,不需要对代码进行测试管理;不需要对代码进行测试管理;3.黑盒测试
10、是把所有可能的输入都作为测试数黑盒测试是把所有可能的输入都作为测试数据使用的,容易查出程序中的错误。据使用的,容易查出程序中的错误。软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学3.2 黑盒测试方法黑盒测试方法 因为黑盒测试一种基于证明功能需求和用因为黑盒测试一种基于证明功能需求和用户最终需求的测试方法,所以在选择测试设计户最终需求的测试方法,所以在选择测试设计测试方法方面一般有如下几种。测试方法方面一般有如下几种。黑盒测试技术设计用例方法:黑盒测试技术设计用例方法:等价类划分法;等价类划分法;边界值分析法;边界值分析法;因果图法;因果图法;判定表驱动测试;判定表驱动测试;软件
11、测试技术研究组软件测试技术研究组 中国信息大学中国信息大学 场景法;场景法;功能图法;功能图法;错误推测法;错误推测法;正交试验设计法。正交试验设计法。在实际测试工作中,往往是综合使用各种在实际测试工作中,往往是综合使用各种方法才能有效提高地提高测试效率和测试覆盖方法才能有效提高地提高测试效率和测试覆盖率,这就需要认真掌握这些方法的原理,积累率,这就需要认真掌握这些方法的原理,积累更多的测试经验,以有效地提高测试水平和测更多的测试经验,以有效地提高测试水平和测试的效率。通常在确定测试方法是,应遵循以试的效率。通常在确定测试方法是,应遵循以下原则和策略。下原则和策略。软件测试技术研究组软件测试技
12、术研究组 中国信息大学中国信息大学原则:原则:根据程序的需求和一旦发生故障将造成的损根据程序的需求和一旦发生故障将造成的损失来确定测试的优先级和测试重点。失来确定测试的优先级和测试重点。根据功能需求认真制定测试策略,尽可能少根据功能需求认真制定测试策略,尽可能少的使用测试用例,减少测试的工作量,发的使用测试用例,减少测试的工作量,发现更多的程序错误。现更多的程序错误。在任何情况下都必须采用边界值分析法。这在任何情况下都必须采用边界值分析法。这种方法设计出的测试用例发现程序错误的种方法设计出的测试用例发现程序错误的能力最强。能力最强。软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学
13、(2)策略:策略:首先进行等价类划分,包括输入条件和输出条件的首先进行等价类划分,包括输入条件和输出条件的首先进行等价类划分,包括输入条件和输出条件的首先进行等价类划分,包括输入条件和输出条件的等价划分,将无限测试变成有限测试,这是减少工作等价划分,将无限测试变成有限测试,这是减少工作等价划分,将无限测试变成有限测试,这是减少工作等价划分,将无限测试变成有限测试,这是减少工作量和提高测试效率最有效的方法。量和提高测试效率最有效的方法。量和提高测试效率最有效的方法。量和提高测试效率最有效的方法。在任何情况下都必须使用边界值分析方法。经验表在任何情况下都必须使用边界值分析方法。经验表在任何情况下都
14、必须使用边界值分析方法。经验表在任何情况下都必须使用边界值分析方法。经验表明,用这种方法设计出的测试用例发现程序错误的能明,用这种方法设计出的测试用例发现程序错误的能明,用这种方法设计出的测试用例发现程序错误的能明,用这种方法设计出的测试用例发现程序错误的能力最强。力最强。力最强。力最强。可以用错误推测法追加一些测试用例,这需要依靠可以用错误推测法追加一些测试用例,这需要依靠可以用错误推测法追加一些测试用例,这需要依靠可以用错误推测法追加一些测试用例,这需要依靠测试工程师的智慧和经验。测试工程师的智慧和经验。测试工程师的智慧和经验。测试工程师的智慧和经验。对照程序逻辑,检查已设计出的测试用例的
15、逻辑覆对照程序逻辑,检查已设计出的测试用例的逻辑覆对照程序逻辑,检查已设计出的测试用例的逻辑覆对照程序逻辑,检查已设计出的测试用例的逻辑覆盖程度。如果没有达到要求的覆盖标准,应当再补充盖程度。如果没有达到要求的覆盖标准,应当再补充盖程度。如果没有达到要求的覆盖标准,应当再补充盖程度。如果没有达到要求的覆盖标准,应当再补充足够的测试用例。足够的测试用例。足够的测试用例。足够的测试用例。软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学 如果程序的功能说明中含有输入条件的组合如果程序的功能说明中含有输入条件的组合情况,则一开始就可选用因果图法和判定表驱情况,则一开始就可选用因果图法和判
16、定表驱动法。动法。对于参数配置类的软件,要用正交试验法选对于参数配置类的软件,要用正交试验法选择较少的组合方式达到最佳效果。择较少的组合方式达到最佳效果。功能图法也是很好的测试用例设计方法,我功能图法也是很好的测试用例设计方法,我们可以通过不同时期条件的有效性设计不同的们可以通过不同时期条件的有效性设计不同的测试数据。测试数据。对于业务流清晰的系统,可以利用场景法贯对于业务流清晰的系统,可以利用场景法贯穿整个测试案例过程,在案例中综合使用各种穿整个测试案例过程,在案例中综合使用各种测试方法。测试方法。软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学3.2.1 等价类划分等价类划分
17、 等价类划分法是一种典型的、重要的黑盒等价类划分法是一种典型的、重要的黑盒测试方法,它将程序所有可能的输入数据(有测试方法,它将程序所有可能的输入数据(有效的和无效的)划分成若干个等价类。然后从效的和无效的)划分成若干个等价类。然后从每个部分中选取具有代表性的数据当作测试用每个部分中选取具有代表性的数据当作测试用例进行合理的分类,测试用例由有效等价类和例进行合理的分类,测试用例由有效等价类和无效等价类的代表组成,从而保证测试用例具无效等价类的代表组成,从而保证测试用例具有完整性和代表性。有完整性和代表性。软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学1.等价类划分等价类划分等价
18、类划分可以分为有效等价类和无效等价类。等价类划分可以分为有效等价类和无效等价类。(1)有效等价类)有效等价类有效等价类指对于程序规格说明来说,是合理有效等价类指对于程序规格说明来说,是合理的、有意义的输入数据构成的集合。利用它,的、有意义的输入数据构成的集合。利用它,可以检验程序是否实现了规格说明预先规定的可以检验程序是否实现了规格说明预先规定的功能和性能。有效等价类可以是一个,也可以功能和性能。有效等价类可以是一个,也可以是多个。根据系统的输入域划分若干部分,然是多个。根据系统的输入域划分若干部分,然后从每个部分中选取少数代表性数据当做数据后从每个部分中选取少数代表性数据当做数据测试的测试用
19、例,等价类是输入域的集合。测试的测试用例,等价类是输入域的集合。软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学(2)无效等价类)无效等价类 无效等价类和有效等价类相反,无效等价无效等价类和有效等价类相反,无效等价类是指对于软件规格说明而言,没有意义的,类是指对于软件规格说明而言,没有意义的,不合理的输入数据集合,利用无效等价类,可不合理的输入数据集合,利用无效等价类,可以找出程序异常说明情况,检查程序的功能和以找出程序异常说明情况,检查程序的功能和性能的实现是否有不符合规格说明要求的地方。性能的实现是否有不符合规格说明要求的地方。软件测试技术研究组软件测试技术研究组 中国信息大
20、学中国信息大学2.2.等价类划分的方法和原则。等价类划分的方法和原则。等价类划分的方法和原则。等价类划分的方法和原则。(1 1)方法)方法)方法)方法 按区间划分。按区间划分。按区间划分。按区间划分。按数值划分。按数值划分。按数值划分。按数值划分。按数值集合划分。按数值集合划分。按数值集合划分。按数值集合划分。按限制条件或规划划分。按限制条件或规划划分。按限制条件或规划划分。按限制条件或规划划分。按处理方式划分。按处理方式划分。按处理方式划分。按处理方式划分。(2 2)原则)原则)原则)原则 在输入条件规定取值范围或值的个数情况下,则可在输入条件规定取值范围或值的个数情况下,则可在输入条件规定
21、取值范围或值的个数情况下,则可在输入条件规定取值范围或值的个数情况下,则可以确定一个有效等价类和两个无效等价类。以确定一个有效等价类和两个无效等价类。以确定一个有效等价类和两个无效等价类。以确定一个有效等价类和两个无效等价类。在规定了输入数据的一组值中(假定在规定了输入数据的一组值中(假定在规定了输入数据的一组值中(假定在规定了输入数据的一组值中(假定n n个),并且个),并且个),并且个),并且程序要对每个输入值分别处理的情况下,可以确定程序要对每个输入值分别处理的情况下,可以确定程序要对每个输入值分别处理的情况下,可以确定程序要对每个输入值分别处理的情况下,可以确定n n个有效等价类和一个
22、无效等价类。个有效等价类和一个无效等价类。个有效等价类和一个无效等价类。个有效等价类和一个无效等价类。软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学等价类表的建立等价类表的建立如表3-1所示。软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学4等价类表与测试用例的关系等价类表与测试用例的关系如表3-2所示。软件测试技术研究组软件测试技术研究组 中国信息大学中国信息大学3.2.2 边界值分析方法边界值分析方法边界值分析法边界值分析法边界值分析法边界值分析法BVABVA(Boundary Value AnalysisBoundary Value Analysis)用于对
23、输入)用于对输入)用于对输入)用于对输入或输出的边界值进行测试的一种黑盒测试方法。或输出的边界值进行测试的一种黑盒测试方法。或输出的边界值进行测试的一种黑盒测试方法。或输出的边界值进行测试的一种黑盒测试方法。选择边界值测试原则选择边界值测试原则选择边界值测试原则选择边界值测试原则选择边界值测试主要考虑以下几条原则:选择边界值测试主要考虑以下几条原则:选择边界值测试主要考虑以下几条原则:选择边界值测试主要考虑以下几条原则:(1 1)如果输入条件规定了值的个数,则用最大个数、最小个)如果输入条件规定了值的个数,则用最大个数、最小个)如果输入条件规定了值的个数,则用最大个数、最小个)如果输入条件规定
24、了值的个数,则用最大个数、最小个数、比最小个数少一个、比最大个数多一个的数作为测试数、比最小个数少一个、比最大个数多一个的数作为测试数、比最小个数少一个、比最大个数多一个的数作为测试数、比最小个数少一个、比最大个数多一个的数作为测试数据。数据。数据。数据。(2 2)如果输入条件规定了值的范围,则应取刚达到这个范围)如果输入条件规定了值的范围,则应取刚达到这个范围)如果输入条件规定了值的范围,则应取刚达到这个范围)如果输入条件规定了值的范围,则应取刚达到这个范围的边界值,以及刚刚超过这个范围边界的值作为测试输入的边界值,以及刚刚超过这个范围边界的值作为测试输入的边界值,以及刚刚超过这个范围边界的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 黑盒 测试 实用技术
限制150内