网站大量收购闲置独家精品文档,联系QQ:2885784924

软件测试及其案例分析第二章基本软件测试方法和常用测试工具.ppt

软件测试及其案例分析第二章基本软件测试方法和常用测试工具.ppt

  1. 1、本文档共113页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
  随着软件测试技术的发展,软件测试方法更加多样化,针对性更强。在实际中,选择合适的软件测试方法或软件测试工具可以让我们事半功倍。本章简要介绍常用的软件测试方法、测试技术和常用的测试工具。      软件测试是由一系列不同类型的测试过程组成的,每种测试类型都有具体的测试目标和支持技术,只侧重于对测试目标的一个或多个特征或属性进行测试,准确的测试类型可以给软件测试带来事半功倍的效果。   1.软件测试方法分类   软件测试的方法和技术是多种多样的。软件测试内容包括文档审查、代码审查、静态分析、代码走查、逻辑测试、功能测试、性能测试、接口测试、人机交互界面测试、强度测试、余量测试、可靠性测试、安全性测试、恢复性测试、边界测试、数据处理测试、安装性测试、容量测试、互操作性测试、敏感性测试、标准符合性测试、兼容性测试和本地化测试等。   (1) 从大的方面软件测试方法可以分为两大类:人工软件测试和基于计算机的软件测试。   (2) 从生成软件测试用例的数据来源划分,软件测试方法可以分为基于规约的软件测试(又称黑盒测试或功能测试)、基于程序的软件测试(又称白盒测试、玻璃盒测试或结构测试)以及这两种方法结合的软件测试。   ① 基于规约的软件测试指软件测试人员无须了解程序的内部结构,直接根据程序输入和输出之间的关系或程序的需求规约来确定软件测试用例进行测试,具体包括:等价类划分、因果图、判定表、边值分析、正交实验设计、状态软件测试、事务流软件测试等。   ② 基于程序的软件测试指软件测试人员根据程序的内部结构特征和与程序路径相关的数据特性设计软件测试数据,主要包括控制流测试和数据流测试两类主要技术,以及域软件测试、符号执行、程序插装和变异软件测试等其他技术。   ③ 程序与规约相结合的软件测试方法综合考虑软件的规范和程序的内部结构来生成测试数据。   (3) 根据软件测试数据设计方法,或从软件测试是否针对系统的内部结构和具体实现算法的角度来看,传统顺序程序的软件测试方法通常被分为功能性测试和结构性测试。在结构性测试过程中,软件测试者对程序的语句、分支和逻辑路径进行各种覆盖测试,可以在不同点检查程序的状态,以确定实际状态与预期状态是否一致。   (4) 按软件测试阶段分类,软件测试分为单元测试、组件测试、集成测试、系统测试、验收测试、安装测试等, 测试阶段是“从小到大”、“由内至外”、“循序渐进”的测试过程,体现了“分而治之”的思想。单元测试的粒度最小,一般由开发小组采用白盒方式来测试,主要测试单元是否符合“设计”要求。   (5) 按软件测试的目的分类,软件测试分为正确性测试(白盒测试、黑盒测试)、性能测试、可靠性测试(强壮性测试、异常处理测试、负载测试)、回归测试、安全性测试和兼容性测试等。   (6) 按软件测试过程分类,软件测试分为需求阶段的测试、设计阶段的测试、程序阶段的测试、测试结果的评估、安装测试、验收测试、测试变化和维护。   (7) 按软件测试的实施方分类,软件测试分为开发方测试、用户测试、第三方测试。   一般软件测试方法的分类见图2.1。      图2.1 软件测试方法分类   2.软件测试的基本方法   按照软件工程的观点,软件开发过程包括需求分析、概要设计、详细设计等多个阶段。为保证软件产品的质量,软件开发过程的每一个阶段都需要进行测试,即软件测试需要贯穿于软件开发的全过程。下面简单介绍不同阶段、不同目的等涉及多种软件测试的方法。   (1) 单元测试:单元测试是最微小规模的测试,以测试某个功能或代码块。很多情况下由程序员而非测试员来做,因为它需要知道内部程序设计和编码的细节知识。这个工作不容易做好,除非应用系统有一个设计很好的体系结构,还可能需要开发测试驱动器模块或测试工具。   (2) 白盒测试(结构测试、逻辑驱动测试或基于程序的测试):白盒测试要利用白盒测试法进行动态测试时,需要测试软件产品的内部结构和处理过程,不需测试软件产品的功能。通过白盒测试可检测产品内部活动是否按照规格说明书的规定正常进行,白盒测试要按照程序内部的结构测试程序,检验程序中的每条通路是否都能按预定要求正确工作。白盒测试的主要方法有逻辑驱动、基路测试等,主要用于软件验证。   (3) 黑盒测试(功能测试、数据驱动测试或基于规格说明的测试):测试人员通过各种输入和软件的各种输出结果来发现软件缺陷(Bug),而不关心程序具体如何实现的一种测试方法,是根据软件的规格对软件进行的测试,黑盒测试不考虑软件内部的运作原理,软件对用户来说就像一个黑盒子,所依据的只有程序的外部特性。   (4) 动态测试:指通过运行软件来检验软件的动态行为和运行结果的正确性。 动态测试一般通过对源代码或者二进制代码进行插装,然后根据程序执行所搜集到的信息进行

文档评论(0)

autohhh + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档