欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    《软件测试过程》PPT课件.ppt

    • 资源ID:70507155       资源大小:284KB        全文页数:29页
    • 资源格式: PPT        下载积分:11.9金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要11.9金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    《软件测试过程》PPT课件.ppt

    软件质量保证与测试软件质量保证与测试第第9章章 软件测试过程软件测试过程 1内容提要内容提要p9.1 计算机软件的可靠性要素计算机软件的可靠性要素l9.1.1 软件可靠性工程l9.1.2 注意的要素p9.2 软件测试的目的和原则软件测试的目的和原则l9.2.1 软件测试的目的l9.2.2 软件测试的原则p9.3 软件测试过程软件测试过程l9.3.1 软件测试过程概述l9.3.2 单元测试l9.3.3 集成测试l9.3.4 系统测试l9.3.5 验收测试l9.3.6 回归测试2内容提要内容提要p9.4 软件测试与软件开发的关系软件测试与软件开发的关系l9.4.1 软件测试贯穿于整个软件开发生命周期l9.4.2 生命周期测试与V模型p9.5 软件测试的过去、现在和未来软件测试的过去、现在和未来p9.6 我国软件测试产业的现状我国软件测试产业的现状p9.7测试工具选择测试工具选择l9.7.1 白盒测试工具l9.7.2 黑盒测试工具l9.7.3 测试设计和开发工具l9.7.4 测试执行和评估工具l9.7.5 测试管理工具l9.7.6 功能和成本p9.8 小结小结39.1 计算机软件的可靠性要素计算机软件的可靠性要素p9.1.1 软件可靠性工程软件可靠性工程l软件可靠性(Software Reliability)是软件质量中的一个重要因素,同时,它还是软件系统固有特性之一,它表明了一个软件系统按照用户的要求和设计的目标,执行其功能的正确程度。软件可靠性与软件缺陷有关,也与系统输入和系统使用有关。理论上说,可靠的软件系统应该是正确、完整、一致和健壮的。理论上说,可靠的软件系统应该是正确、完整、一致和健壮的。但是实际上任何软件都不可能达到百分之百的正确,而且也无但是实际上任何软件都不可能达到百分之百的正确,而且也无法精确度量。一般情况下,只能通过对软件系统进行测试来度法精确度量。一般情况下,只能通过对软件系统进行测试来度量其可靠性。量其可靠性。l软件可靠性有很多不同描述的定义,目前被广泛接受的定义是:“软件可靠性是软件系统在规定的时间内及规定的环境条件下,软件不引起系统失效的概率。”该概率是系统功能及软件中存在的差错的函数。软件可靠性是软件的客观属性,它只有在软件运行时才表现出软件可靠性是软件的客观属性,它只有在软件运行时才表现出来。因此,一般来说,软件失效就意味着在软件运行时不能够来。因此,一般来说,软件失效就意味着在软件运行时不能够完成需求中所规定的预期任务。完成需求中所规定的预期任务。49.1.2 注意的要素注意的要素p规定的时间规定的时间p规定的环境条件规定的环境条件p不引起系统失效不引起系统失效p研究软件可靠性的目的研究软件可靠性的目的p软件的可靠性与正确性的区别软件的可靠性与正确性的区别59.2 软件测试的目的和原则软件测试的目的和原则p软件测试就是在软件投入运行前,对软件软件测试就是在软件投入运行前,对软件的需求分析、设计、实现编码进行最终审的需求分析、设计、实现编码进行最终审查。查。p表面上看,软件工程的其他阶段都是建设表面上看,软件工程的其他阶段都是建设性的,而软件测试是摧毁性的。性的,而软件测试是摧毁性的。p但是,软件测试的最终目的是建立一个高但是,软件测试的最终目的是建立一个高可靠性的软件系统的一部分。正如本章开可靠性的软件系统的一部分。正如本章开篇所说,它的定义为:软件测试就是为了篇所说,它的定义为:软件测试就是为了发现缺陷而运行程序的过程。发现缺陷而运行程序的过程。69.2.1 软件测试的目的软件测试的目的p著名软件工程专家著名软件工程专家G.J.Myers将软件测将软件测试的目的归纳:试的目的归纳:l测试是程序的执行过程,目的在于发现错误;l一个好的测试用例在于能发现至今未发现的错误;l一个成功的测试是发现了至今未发现的错误的测试。79.2.2 软件测试的原则软件测试的原则p在整个开发过程中要尽早地和不断地进行软件测试。在整个开发过程中要尽早地和不断地进行软件测试。p在开始测试时,不应默认程序中不存在错误。在开始测试时,不应默认程序中不存在错误。p设计测试用例时,要给出测试的预期结果。设计测试用例时,要给出测试的预期结果。p测试工作应避免由系统开发人员或开发机构本身来承担。测试工作应避免由系统开发人员或开发机构本身来承担。p对合理的和不合理的输入数据都要进行测试。对合理的和不合理的输入数据都要进行测试。p重点测试错误群集的程序区段。重点测试错误群集的程序区段。p除检查程序功能是否完备外,还要检查程序功能是否有多除检查程序功能是否完备外,还要检查程序功能是否有多余。余。p用穷举测试是不可能的。用穷举测试是不可能的。p长期完整保留所有的测试用例和测试文件,直至该软件产长期完整保留所有的测试用例和测试文件,直至该软件产品被废弃为止。品被废弃为止。89.3 软件测试过程软件测试过程p9.3.1 软件测试过程概述软件测试过程概述l由于软件错误的复杂性,在软件工程范围内要综合应用测试技术,根据定义域中的取值,通过执行和观察,将预期的行为和实际的行为做比较,以确认测试的结果,因此软件测试是一个综合测试的过程。l软件测试时需要以下三类信息:软件配置:指需求说明书、设计说明书和源程序等。软件配置:指需求说明书、设计说明书和源程序等。测试配置:指测试方案、测试用例和测试驱动程序等。测试配置:指测试方案、测试用例和测试驱动程序等。测试工具:指计算机辅助测试的有关工具。测试工具:指计算机辅助测试的有关工具。9软件测试过程软件测试过程 交付模块单元测试单元测试单元测试集成测试集成测试系统测试验收测试模块模块回归测试贯穿整个测试过程109.3.2 单元测试单元测试p定义定义p测试内容测试内容l接口测试l局部数据结构测试l重要执行路径测试l错误处理测试l边界条件测试p测试方法测试方法l驱动模块l桩模块p测试技术测试技术l静态测试l白盒测试l状态转换测试l功能测试和非功能测试p测试人员测试人员(模拟E)(模拟D)(模拟M)MBACDE驱动模块B测试用例测试结果桩模块1桩模块2(a)软件结构(b)模块B的测试环境119.3.3 集成测试集成测试p定义定义p测试内容测试内容p测试方法测试方法l非增量式集成测试方法l增量式集成测试方法自顶向下增量式集成测试自顶向下增量式集成测试自底向上增量式集成测试自底向上增量式集成测试p测试技术测试技术p测试人员测试人员12两种测试方法的比较两种测试方法的比较 测试测试方法方法优优点点缺点缺点自顶向下1.如果程序错误趋向于发生在程序的顶端时,有利于查出错误。2.可以较早出现程序的轮廓。3.加进输人输出模块后,较方便描述测试用例。1.桩模块较难设计。2.模块介入使结果较难观察。自底向上1.如果程序错误趋向于发生在程序的底端时,有利于查出错误。2.容易产生测试条件和观察测试结果。3.容易编写驱动模块。1.在加入最后一个模块之前,程序不能作为一个整体存在。2.必须给出驱动程序。139.3.4 系统测试系统测试p定义定义p测试内容测试内容l功能测试l性能测试l强度测试l可靠性测试l恢复测试l安装测试l安全性测试l配置测试l可用性测试l兼容性测试l网站测试p测试技术测试技术p测试人员测试人员149.3.5 验收测试验收测试p定义定义p测试内容测试内容p测试技术测试技术l测试l测试p测试人员测试人员159.3.6 回归测试回归测试p定义定义p测试策略测试策略l测试用例库的维护l回归测试包的选择p测试过程测试过程p测试技术测试技术p测试人员测试人员169.4 软件测试与软件开发的关系软件测试与软件开发的关系p9.4.1 软件测试贯穿于整个软件开发生命周期软件测试贯穿于整个软件开发生命周期l上世纪70年代中期以来,逐渐形成了软件开发声明周期的概念。这对于软件产品的质量保证以及组织好软件开发工具有着重要的意义。首先,由于能够把整个开发工作明确地划分为若干个开发步骤,就能把复杂的问题按阶段分别加以解决。使得对于问题的认识与分析、解决的方案与采用的方法以及使得对于问题的认识与分析、解决的方案与采用的方法以及如何具体实现在各个阶段都有着明确的目标。如何具体实现在各个阶段都有着明确的目标。l其次,把软件开发划分成阶段,就对中间产品提供了检验的依据。各阶段完成的软件文档成为检验软件质量的主要对象。l很显然,表现在程序中的错误,并不一定是编码引起的,很可能是详细设计、概要设计阶段,甚至是需求分析阶段的问题引起的。因此,针对源程序测试时,所发现的问题的根源可能在开发时期的各个阶段。解决错误、纠正错误也必须追溯到前期的工作。正是如此,测试工作应该着眼于整个软件开发生命周期,特正是如此,测试工作应该着眼于整个软件开发生命周期,特别是着眼于编码以前各开发阶段的工作来保证软件的质量。别是着眼于编码以前各开发阶段的工作来保证软件的质量。也就是说,测试应该从软件开发生命周期的第一个阶段开始,也就是说,测试应该从软件开发生命周期的第一个阶段开始,并贯穿于整个软件开发生命周期。并贯穿于整个软件开发生命周期。179.4.2 生命周期测试与生命周期测试与V模型模型p需求分析需求分析p设计设计p编码编码p测试测试p安装安装p维护维护开开发发阶阶段段验证验证活活动动需求分析确定测试步骤确定需求是否恰当生成功能测试用例确定设计是否符合需求设计确定设计信息是否足够准备结构和功能的测试用例确定设计的一致性编码为单元测试产生结构和功能测试的测试用例进行足够的单元测试测试看重在功能上测试应用系统安装把测试过的系统投入生产维护修改缺陷并重新测试18V模型模型 回 归 测 试需求规格说明设计实现验收测试系统测试集成测试单元测试199.5 软件测试的过去、现在和未来软件测试的过去、现在和未来p软件测试是伴随着软件的产生而产生的。软件测试是伴随着软件的产生而产生的。l早期的软件开发过程中,那时软件规模都很小、复杂程度低,软件开发的过程混乱无序、相当随意,测试的含义比较狭窄,开发人员将测试等同于“调试”,目的是纠正软件中已经知道的故障,常常由开发人员自己完成这部分的工作。p对测试的投入极少,测试介入也晚,常常是等到形成代码,产品已对测试的投入极少,测试介入也晚,常常是等到形成代码,产品已经基本完成时才进行测试。经基本完成时才进行测试。p直到直到1957年,软件测试才开始与调试区别开来,作为一种发现软年,软件测试才开始与调试区别开来,作为一种发现软件缺陷的活动。件缺陷的活动。p由于一直存在着由于一直存在着“为了让我们看到产品在工作,就得将测试工作往为了让我们看到产品在工作,就得将测试工作往后推一点后推一点”的思想,潜意识里对测试的目的就理解为的思想,潜意识里对测试的目的就理解为“使自己确信使自己确信产品能工作产品能工作”。l测试活动始终后于开发的活动,测试通常被作为软件生命周期中最后一项活动而进行。l当时也缺乏有效的测试方法,主要依靠“错误推测(Error Guessing)”来寻找软件中的缺陷。因此,大量软件交付后,仍存在很多问题,软件产品的质量无法保证。209.6 我国软件测试产业的现状我国软件测试产业的现状p软件测试重要性和规范性不断提高软件测试重要性和规范性不断提高p从手工向自动化测试方式的转变从手工向自动化测试方式的转变p测试人员需求逐步增大,素质不断提高测试人员需求逐步增大,素质不断提高p测试服务体系初步形成测试服务体系初步形成219.7测试工具选择测试工具选择p测试自动化和测试工具不仅可以提高测试任务执测试自动化和测试工具不仅可以提高测试任务执行的效率,还有助于:行的效率,还有助于:l对新版本进行回归测试。l执行更多更频繁的测试。l执行一些手工测试困难或不可能做的测试。l更好地利用资源。l测试具有一致性和可重复性。l测试的复用性。l增加软件信任度。l可以更快地将软件推向市场。229.7.1 白盒测试工具白盒测试工具p静态测试工具静态测试工具p动态测试工具动态测试工具239.7.2 黑盒测试工具黑盒测试工具p功能测试工具功能测试工具p性能测试工具性能测试工具249.7.3 测试设计和开发工具测试设计和开发工具p测试设计和开发需要的工具类型有:测试设计和开发需要的工具类型有:l测试数据生成器。l基于需求的测试设计工具。p测试数据生成工具非常有用,测试数据生成工具可以为被测试数据生成工具非常有用,测试数据生成工具可以为被测程序自动生成测试数据,减轻人们在生成大量测试数据测程序自动生成测试数据,减轻人们在生成大量测试数据时所付出的劳动,同时还可避免测试人员对一部分测试数时所付出的劳动,同时还可避免测试人员对一部分测试数据的偏见。据的偏见。p常用的测试数据生成工具有:常用的测试数据生成工具有:Bender&Associates公司提供的功能测试数据生成工具公司提供的功能测试数据生成工具SoftTest,Parasoft公司提供的公司提供的C/C+单元测试工具单元测试工具Parasoft C+test等。基于需求的测试设计工具至今还没有获得广泛的实际等。基于需求的测试设计工具至今还没有获得广泛的实际应用。应用。lAonix公司提供了一种基于需求和设计的测试数据生成工具Validator/Req、StP/SE和StP/UML。259.7.4 测试执行和评估工具测试执行和评估工具p测试执行和评估是执行测试用例并对测试结果进测试执行和评估是执行测试用例并对测试结果进行评估的过程,包括选择用于执行的测试用例、行评估的过程,包括选择用于执行的测试用例、设置测试环境、运行所选择的测试、记录测试执设置测试环境、运行所选择的测试、记录测试执行过程、分析潜在的软件故障并测量测试工作的行过程、分析潜在的软件故障并测量测试工作的有效性。有效性。p评估类工具对执行测试用例和评估测试结果这一评估类工具对执行测试用例和评估测试结果这一过程起辅助作用。过程起辅助作用。p测试执行和评估类工具有:测试执行和评估类工具有:l捕获/回放l覆盖分析l存储器测试269.7.5 测试管理工具测试管理工具p测试管理工具是指帮助完成制定测试计划,跟踪测试管理工具是指帮助完成制定测试计划,跟踪测试运行结果等的工具。测试运行结果等的工具。p一个小型软件项目可能有数千个测试用例要执行,一个小型软件项目可能有数千个测试用例要执行,使用捕获使用捕获/回放工具可以建立测试并使其自动执回放工具可以建立测试并使其自动执行,但仍需要测试管理工具对成千上万个杂乱无行,但仍需要测试管理工具对成千上万个杂乱无章的测试用例进行管理。章的测试用例进行管理。p测试管理工具用于对测试进行管理。一般而言,测试管理工具用于对测试进行管理。一般而言,测试管理工具对测试计划、测试用例、测试实施测试管理工具对测试计划、测试用例、测试实施进行管理,还包括缺陷跟踪管理工具等。进行管理,还包括缺陷跟踪管理工具等。p测试管理工具的代表有测试管理工具的代表有Rational公司的公司的Test Manager,Compureware公司的公司的TrackRecord等。等。279.7.6 功能和成本功能和成本p功能功能l报表功能。测试工具生成的结果最终由人来进行解释,查看最终报告的人不一定对测试熟悉,因此,测试工具能否生成结果报表,以什么形式提供报表是需要考虑的因素之一。l测试工具的集成能力。测试工具的引入是一个伴随测试过程改进而进行的长期过程,因此,测试工具的集成能力也是必须考虑的因素,这里的集成包括两方面的含义:测试工具能否和开发工具进行良好的集成。测试工具能否和开发工具进行良好的集成。测试工具能否和其他测试工具进行良好的集成。测试工具能否和其他测试工具进行良好的集成。l和操作系统及开发工具的兼容性。测试工具是否可以跨平台,是否适用于公司目前使用的开发工具,这些问题也是选择一个测试工具时应该考虑的问题。p成本成本l工具怎样介入并支持测试过程。l知道怎样计划并设计测试。289.8 小结小结p随着人们对软件质量的重视程度越来越高,随着人们对软件质量的重视程度越来越高,软件测试在软件开发中的地位越来越重要。软件测试在软件开发中的地位越来越重要。p软件测试是目前用来检验软件能否完成预软件测试是目前用来检验软件能否完成预期的功能的惟一有效的方法,其总目标是期的功能的惟一有效的方法,其总目标是充分利用有限的人力和物力资源,高效率、充分利用有限的人力和物力资源,高效率、高质量地进行测试。高质量地进行测试。29

    注意事项

    本文(《软件测试过程》PPT课件.ppt)为本站会员(wuy****n92)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开