软件测试第4章课件.ppt

上传人(卖家):三亚风情 文档编号:3390142 上传时间:2022-08-26 格式:PPT 页数:20 大小:231.50KB
下载 相关 举报
软件测试第4章课件.ppt_第1页
第1页 / 共20页
软件测试第4章课件.ppt_第2页
第2页 / 共20页
软件测试第4章课件.ppt_第3页
第3页 / 共20页
软件测试第4章课件.ppt_第4页
第4页 / 共20页
软件测试第4章课件.ppt_第5页
第5页 / 共20页
点击查看更多>>
资源描述

1、第第4章章 白盒测试技术白盒测试技术4.1 白盒测试的优点和缺点白盒测试的优点和缺点 白盒测试一般以单元或模块为基础,对程序代码进行分析或者利用部分工具协助发现变量未初始化、指针错误等问题。4.1.1 白盒测试的优点白盒测试的优点 白盒测试具有以下主要优点:(1)白盒测试有助于测试人员深入思考软件的框架结构、实现方式,找到最佳实现方法优化程序。(2)白盒测试能够了解程序的分支结构,找到和减少代码中的隐藏错误。(3)白盒测试可以执行等价路径,类似于等价类划分法。(4)通过白盒测试能够让测试员了解程序的质量,从实现细节的角度分析程序的可行性,更快、更彻底地发现错误。白盒测试的最大优点在于不仅能节省

2、时间,而且能够优化程序结构。4.1.2 白盒测试的缺点白盒测试的缺点当然,白盒测试也有让人无法忽视的缺点:(1)对于小型程序,白盒测试技术能够通过修改源代码进行程序调试,但这对测试人员的编程经验和技术要求是很大的挑战。因此,白盒测试技术会增加测试成本。(2)白盒测试不验证规格的正确性。(3)白盒测试不能检查代码中遗漏的路径和数据敏感性错误。(4)白盒测试需要特殊工具,如源代码分析器、调试器、故障注入工具等。此外,还需要测试人员具备各方面丰富的知识和经验,如编程语言、建模、测试工具等。此类要求大大增加了测试的成本。(5)白盒测试让开发人员和测试人员之间的界线更加模糊,这不利于企业的分工和文化发展

3、。测试质量依赖于测试数据,但生成测试数据、分析测试结果的工作量大,使得开展测试工作费时、费力、费财。在动态测试中涉及多方面工作,需要人员多、设备多、数据多,并且要求有较好的管理和工作规程,这些都对测试成本和企业分工造成了很大压力。4.2 白盒测试的依据和流程白盒测试的依据和流程 白盒测试是基于软件的源代码,在已知产品的内部工作过程的情况下,对程序内部结构展开测试,关注程序实现细节。白盒测试的针对性很强,测试效率很高,可以帮助用户了解测试的覆盖程度。本节将重点介绍白盒测试技术的依据和流程。4.2.1 白盒测试的依据白盒测试的依据白盒测试的主要依据如下:软件产品的需求报告。软件产品的需求规格说明书

4、。软件产品的设计文档。软件产品的界面。软件产品的编码规范。软件产品的开发命名规范。软件产品设计文档的相关规范。4.2.2 白盒测试的流程白盒测试的流程 1)界面对象测试流程)界面对象测试流程 2)业务对象测试流程)业务对象测试流程4.3 白盒测试的方法白盒测试的方法4.3.1 逻辑覆盖法逻辑覆盖法逻辑覆盖测试是传统的白盒测试技术,是通过对程序内部的逻辑结构的遍历来实现以程序覆盖为基础的设计测试用例的技术。逻辑覆盖的关注点在于条件判定表达式本身的复杂度,它通过对程序逻辑结构的遍历表实现程序的覆盖,该法所遵循的基本测试原则是:对程序代码中所有的逻辑值均需要测试真值和假值的情况。1案例代码的基本描述

5、 2语句覆盖(Statement Coverage,SC)3判定覆盖(Decision Coverage,DC)4条件覆盖(Condition Coverage,CC)5判定/条件覆盖(Decision/Condition Coverage,D/CC)6修正的判定/条件覆盖(Modified Decision/Condition Coverage,MD/CC)7条件组合覆盖(Condition Combination Coverage,CCC)4.3.2 基路径测试法基路径测试法 基路径覆盖,即选取足够多的测试数据,从程序的入口开始,使每条可能路径都至少执行一次。优点:基路径覆盖的覆盖率高,是

6、经常使用的测试覆盖方法。缺点:基路径覆盖不一定能保证条件组合覆盖。4.3.3 对循环的测试对循环的测试 对循环的测试主要是关注循环造成的程序结构复杂度的提高,它遵循的基本测试原则是:在循环的边界和运行界限执行循环体。因此,循环总是与边界值测试密切相关4.3.4 数据流测试数据流测试 数据流测试的主要工作是以被测变量为中心,关注关于该变量的每条定义使用路径,若该路径不存在定义/引用异常缺陷的风险,则该路径不需要测试,否则该路径需要重点测试。从这个角度来看,数据流测试更多关注的是存在缺陷的风险,而非查找缺陷。数据流测试的一般步骤如下:(1)确定被测变量的所有定义节点和使用节点。(2)确定每一对定义

7、/使用节点对。(3)判断每条定义/使用节点对之间的路径是否为高风险路径。4.3.5 静态白盒测试技术静态白盒测试技术 动静态白盒测试技术是指不运行被测软件,只是通过研究软件的源代码和程序结构来检查程序代码、界面和文档中存在的错误。4.3.6 动态白盒测试技术动态白盒测试技术 动态白盒测试技术也称为结构化测试技术,是指通过分析其源代码和程序结构,并运行被测软件,输入相应的测试数据,检查输入结果是否符合预测结果。动态白盒测试不仅仅是查看代码,还包括直接参数和控制软件。4.4 白盒测试工具白盒测试工具 目前,用于白盒测试的工具有很多。这里我们介绍C+Test、Logiscope和BoundsChec

8、ker三种测试工具。4.4.1 C+Test介绍介绍 C+Test是法国Parasoft公司开发的一款专门测试C/C+程序的白盒测试工具,自动测试任何C/C+类、函数或部件,而不需要编写一个测试用例、测试驱动程序或桩调用,C+Test能够自动测试代码构造、测试代码功能性和维护代码的完整性。C+Test是一个易于使用的产品,能够适应任何开发生命周期,通过C+Test集成到开发过程中,能够有效地防止软件错误,提高代码的稳定性。4.4.2 Logiscope介绍介绍Logiscope是法国Telelogic公司推出的专用于软件质量保证和软件测试的产品,其主要功能是对软件做质量分析和测试以保证软件的质

9、量,并可做认证、反向工程和维护,特别是针对要求可靠性高和安全性高的软件项目和工程。Logiscope是面向源代码进行工作的,贯穿于软件开发、代码评审、单元测试、集成测试、系统测试以及软件维护阶段。它应用于软件的整个生命周期,贯穿于软件需求分析阶段、设计阶段、代码开发阶段、软件测试阶段、软件维护阶段。在设计和开发阶段,使用Logiscope可以对软件的体系结构和编码进行确认。可以在早期阶段尽可能地检测那些关键部分,寻找潜在的错误。在测试阶段用Logiscope,可使测试更加有效,并且可针对软件结构,度量测试覆盖的完整性,评估测试效率,确保满足要求的测试等级。特别是,Logiscope还可以自动生

10、成相应的测试分析报告;在软件的维护阶段,用Logiscope验证已有的软件是否是质量已得到保证的软件,对于状态不确定的软件,Logiscope可以迅速提交软件质量的评估报告,大幅度地减少理解性工作,避免不受控制修改引发的错误。4.4.3 BoundsChecker介绍介绍 BoundsChecker是为C/C+程序设计的Run-Time错误检测工具,只能在Windows平台上运行,它主要定位程序在运行时期发生的各种错误。BoundsChecker能检测的错误包括:指针操作和内存、资源泄露错误。比如,内存泄露(memory leak)、资源泄露(resource leak)、对指针变量的错误操作

11、等。内存操作方面的错误。比如,内存读/写溢出(memory read/write overflow)、使用未初始化的内存等。API函数的兼容性。处理API函数在不同平台上运行的兼容性问题。使用BoundsChecker对程序的运行时错误进行检测,有两种使用模式可供选择:一种模式叫做ActiveCheck,另一种模式叫做FinalCheck。4.5 本章小结本章小结 白盒测试是针对程序代码展开的测试,需要测试人员了解程序实现细节。白盒测试方法主要运用在单元测试、集成测试等阶段,主要由开发小组内部来完成。白盒测试包括多种测试用例的设计方法,同样地,也不必将这些方法都用在测试中,而应根据被测系统的实际情况分别选取合适的白盒测试策略

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(软件测试第4章课件.ppt)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|