这是软件测试的文档,有白盒测试和黑河测试两种测试方法综述

上传人:我** 文档编号:115924685 上传时间:2019-11-15 格式:PPT 页数:38 大小:247.50KB
返回 下载 相关 举报
这是软件测试的文档,有白盒测试和黑河测试两种测试方法综述_第1页
第1页 / 共38页
这是软件测试的文档,有白盒测试和黑河测试两种测试方法综述_第2页
第2页 / 共38页
这是软件测试的文档,有白盒测试和黑河测试两种测试方法综述_第3页
第3页 / 共38页
这是软件测试的文档,有白盒测试和黑河测试两种测试方法综述_第4页
第4页 / 共38页
这是软件测试的文档,有白盒测试和黑河测试两种测试方法综述_第5页
第5页 / 共38页
点击查看更多>>
资源描述

《这是软件测试的文档,有白盒测试和黑河测试两种测试方法综述》由会员分享,可在线阅读,更多相关《这是软件测试的文档,有白盒测试和黑河测试两种测试方法综述(38页珍藏版)》请在金锄头文库上搜索。

1、第1 章 软件测试概述 n计算机系统的规模和复杂性急剧增加,其 软件开发成本以及由于软件故障而造成的 经济损失也正在增加,软件质量问题已成 为人们共同关注的焦点。 n软件测试是对软件需求分析、设计规格说 明和编码的最终复审,是软件质量保证的 关键步骤。 本章主要内容 1.1 计算机系统的软件可靠性问题 1.2 软件测试的目的和意义 1.3 软件测试过程 1.4 软件测试与软件开发的关系 1.5 软件测试的发展历程、现状和趋势 1.6 软件测试工具 1.1 计算机系统的软件可靠性问题 n千年虫问题 n爱国者导弹防御系统 n美国火星登陆事故 nIntel奔腾芯片缺陷 nWindows 2000安全

2、漏洞 1.2 软件测试的定义、目的和意义 n定义1:1983年IEEE(国际电子电气工程师协会 )提出的软件工程标准术语中给软件测试下的定 义是: “使用人工或自动手段来运行或测定某个系统的过 程,其目的在于检验它是否满足规定的需求或是 弄清预期结果与实际结果之间的差别”。 n定义2:软件测试是根据软件开发各阶段的规格说 明和程序的内部结构而精心设计一批测试用例, 并利用这些测试用例去执行程序,以发现软件故 障的过程。 n定义3:软件测试是一种软件质量保证活动,其动 机是通过一些经济有效的方法,发现软件中存在 的缺陷,从而保证软件质量。 软件测试的定义、目的和意义 n软件测试的根本目的是:以尽

3、可能少的时 间和人力发现并改正软件中潜在的各种故 障和缺陷,提高软件的质量。 n一个好的测试用例在于发现至今尚未被发 现的故障; n一个成功的测试是发现了至今未被发现的 故障的测试。 1.3 软件测试过程 软件测试过程 1单元测试(模块测试) n目的:检测程序模块中有无故障存在 n对象:软件设计的最小单位 n单元测试与程序设计和编程实现关系密切,因 此一般由测试人员和编程人员共同完成。 n常采用白盒测试方法。 软件测试过程 2集成测试(组装测试、子系统测试) n目的:发现与接口有关的模块之间的问题 n两种方法 n非增量式集成测试法 n对每一个模块进行单元测试 n在此基础上按程序结构图将各模块连

4、接起来,把连 接后的程序当作一个整体进行测试 n增量式集成测试法 n不断地把待测模块连接到已测模块集(或其子集)上 ,对待测模块进行测试,直到最后一个模块测试完 毕 软件测试过程 3确认测试 对照软件需求规格说明,对软件产品进行评估 以确定其是否满足软件需求的过程。 软件测试过程 4系统测试 n目的:针对系统中各个组成部分(含软件、硬 件、相关的外围设备、数据及采集和传输机构 、操作人员等)进行的综合性检验,证明系统 的性能 n测试人员要求: n系统开发人员不能进行系统测试。 n系统开发组织不能负责系统测试。 软件测试过程 5 验收测试 n目的:向用户表明所开发的软件系统能够像用 户所预定的那

5、样工作。 n验收测试是将最终产品与最终用户的当前需求 进行比较的过程,是软件开发结束后软件产品 向用户交付之前进行的最后一次质量检验活动 ,它解决开发的软件产品是否符合预期的各项 要求,用户是否接受等问题。 1.4 软件测试与软件开发的关系 1.4.1 软件开发过程 正规的软件开发过程一般包括六个阶段,即: n制定计划 n需求分析 n软件设计 n程序编写 n软件测试 n运行和/维护 这六个阶段构成了软件的生存周期。 1.4.2 软件测试在软件开发中的作用 软件测试应贯穿于软件定义与开发的整个期 间,测试在开发各阶段的作用如下: n项目规划阶段:负责整个测试阶段的监控。 n需求分析阶段:确定测试

6、需求分析,制定系统测 试计划。测试需求分析是指产品生存周期中测试 所需的资源、配置、各阶段评审通过的标准等。 n概要设计和详细设计阶段:制定集成测试计划和 单元测试计划。 n编码阶段:开发相应的测试代码或测试脚本。 n测试阶段:实施测试,并提交相应的测试报告。 软件测试与软件开发的关系 1.4.3 软件测试过程模型 1. 软件测试过程V模型 n特点:非常明确地表明了测试的不同级别,清 晰地展示了软件测试与开发之间的关系 1.4.3 软件测试过程模型 2. 软件测试过程W模型 W模型形象地说明 了软件测试与开发 的并行关系,体现 了测试贯穿于整个 开发过程的思想。 1.4.4 软件测试环境的搭建

7、 测试一个软件之前,首先应该搭建用 来运行软件的环境,即测试环境。 测试环境 硬件软件网络数据准备 测试工具 软件测试环境的搭建 n硬件环境: 主要是指PC机、笔记本电脑、服务器、各种PDA终端等。 例如现要测试微软的word 2003这一款软件,那么是在PC机 上测试还是在笔记本电脑上测试?如果在PC机上测试,那 么CPU是奔腾2.4G,还是赛扬1.7G?内存是DDR512M,还是 SD128M? 不同的机器类型,不同的机器配置,必然会导致 不同的反应速度,因此测试一款软件时一定要考虑硬件配置 。 n软件环境: 主要是软件运行的操作系统。比如word 2003是在 Window 2003下检

8、测,还是在Window XP下检测,这里可能 会有兼容性的问题。 软件测试环境的搭建 n网络环境: 主要指的是C/S结构还是B/S结构。例如要 测试微软的outlook 2003这一款软件,那么 是在局域网里测,还是在互联网里测?如果 在局域网中测,那么是在10M的局域网里测 ,还是在100M的局域网里测?不同的网络 类型,不同的传输速度,必然会导致不同的 收发速度,因此测试一款软件时也不能忽视 网络的因素。 软件测试环境的搭建 n数据准备: 主要指的是测试数据的准备。测试数据的 准备应考虑数据量和真实性,即尽可能获 取大量的真实的数据,包括正确和错误的 数据。当无法取得真实数据时应尽可能模

9、拟出大量的数据。 软件测试环境的搭建 n测试工具: 目前市场上的测试工具很多,可分为静态 测试工具、动态测试工具、黑盒测试工具 、白盒测试工具、测试执行评估工具、测 试管理工具等,因此,对测试工具的选择 是一个比较重要的问题,应根据测试需求 和实际条件来选择已有的测试工具,或购 买、自行开发相应的测试工具。 软件测试环境的搭建 除了上述几种因素外,搭建软件测试环境 还应注意以下几点: n尽量模拟用户的真实使用环境; n测试环境中尽量不要安装其它与被测软件无关 的软件,但最好安装杀毒软件,以确保系统没 有病毒; n测试环境应与开发环境独立。 1.5 软件测试的发展历程、现状、趋势 发展历程: n

10、20世纪50年代,英国著名的计算机科学家图灵给 出了软件测试的原始定义:测试是程序正确性证 明的一种极端实验形式。 n20世纪70年代以后,软件测试的研究开始受到重 视,是软件测试技术发展最活跃的时期。 n1975年,Goodenough首次提出了软件测试理论 ,从而把软件测试这一实践性很强的学科提高到 理论的高度。 n1982年,美国北卡来纳大学召开了首次软件测试 技术会议,本次会议成为软件测试技术发展的一 个重要里程碑。 软件测试的现状 现状: n就目前软件工程发展的状况而言,软件测试仍然 是较为薄弱的一个方面。不仅测试理论,已有的 测试方法也不能满足当前软件开发的实际需求。 n尤其是进入

11、20世纪90年代后,计算机技术日趋成 熟,软件应用范围逐步扩大,软件规模和复杂性 急剧增加,与此同时,计算机出现故障引起系统 失效的可能性也逐渐增加。由于计算机硬件技术 的进步,元器件可靠性的提高,硬件设计和验证 技术的成熟,硬件故障相对显得次要了,软件故 障正逐渐成为导致计算机系统失效和停机的主要 因素。 国外发展现状 在软件比较发达的国家,特别是美国,软件 测试已经发展成为一个独立的产业,主要体 现在: n软件测试在软件公司中占有重要的地位。 n软件测试理论研究蓬勃发展。 n软件测试市场繁荣,美国一些专业公司出品的 测试工具已经占领了国际市场。 微软的测试规模 微软的测试规模 我国软件测试

12、产业现状 n随着软件外包行业的逐渐兴起和人们对软件质量保障意识 的加强,中国软件企业已开始认识到,软件测试的广度和 深度决定了中国软件企业的前途命运。 n以占软件外包总量近85%的对日软件外包来说,业务 内容基本都针对测试环节。软件外包中对测试环节的强化 ,直接导致了软件外包企业对测试人才的大量需求。 n近年来,几乎所有的软件企业均存在不同程度的测试人才 缺口,软件测试工程师已成为了亟待补充的关键技术工种 之一。 nIBM、百度、华为、惠普、盛大网络、联想集团等国内外 大型IT企业均表现出对成熟软件测试人才的期盼,而微软 、三星、西门子、思科、华为3COM等多家国内外IT巨头 则相继在全国各大

13、高校招兵买马,并把软件测试人才的招 聘放在了突出的位置。国内软件测试人才紧缺的现状已经 凸显出来。 软件测试的发展趋势 n测试工作将进一步前移。 n软件架构师、开发工程师、QA(质量保证 )人员、测试工程师将进行更好的融合。 n测试职业将得到充分的尊重。 n设置独立的软件测试部门将成为越来越多 的软件公司的共识。 n测试外包服务将快速增长。 1.6 软件测试工具 1. 白盒测试工具 n静态测试工具 n职能:主要集中在需求文档、设计文档以及程序结构上 ,可以进行类型分析、接口分析、输入输出规格说明分 析等。 n工具: nMcCabe & Associates 公司开发的McCabe Visual

14、 Quality ToolSet 分析工具; nViewLog公司开发的LogiScope分析工具; nSoftware Research公司开发的TestWork/Advisor分析工具 nSoftware Emancipation公司开发的Discover分析工具 n北京邮电大学开发的DTS缺陷测试工具,等。 软件测试工具 1. 白盒测试工具 n动态测试工具 n职能:功能确认与接口测试、覆盖率分析、性 能分析、内存分析等 n工具: nCompuware公司开发的DevPartner软件; nRational公司研制的Purify系列等。 软件测试工具 2. 黑盒测试工具 n工具: nRat

15、ional公司的TeamTest; nCompuware公司的QACenter,等。 n分类 n功能测试工具:检测被测程序能否达到预期的 功能要求并正常运行。 n性能测试工具:用来确定软件和系统的性能。 软件测试工具 3. 测试设计和开发工具 n测试设计是说明测试被测软件特征或特征组合的方法,确 定并选择相关测试用例的过程。 n测试开发是将测试设计转换成具体的测试用例的过程。 n工具类型: n测试数据生成器 代表工具:Bender & Associates公司提供的功能测试数据生成工 具SoftTest;Parasoft公司提供的C/C+单元测试工具Parasoft C+test等。 n基于需

16、求的测试设计工具 n捕获/回放工具 n覆盖分析工具 n 软件测试工具 4. 测试执行和评估工具 n测试执行和评估:执行测试用例并对结果进行评 估的过程,包括选择用于执行的测试用例、设置 测试环境、运行所选择的测试、记录测试执行活 动、分析潜在的软件故障并测量测试工作的有效 性。 n工具类型 n捕获回放 n覆盖分析 n存储器测试 软件测试工具 5. 测试管理工具 n测试管理:帮助完成测试计划,跟踪测试运行结 果等。 n用途: n测试用例管理 n缺陷跟踪管理 n配置管理 n代表工具: Rational公司的Test Manager、Compureware公 司的TrackRecord等软件。 软件测试工具 6. 目前市场上主流的测试工具 以MI,Rational和Compuware公司开发的软件测试工具为主导。 nMI公司产品 nLoadRunner nWinRunner nTestDirector nQTP nIBM Rational公司产品 nRational Robot (功能/性能测试工具) nRational Purify (白盒测试工具) n

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

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