Ch3-软件测试基础--测试方法分解.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件测试方法和技术 第三章 软件测试方法与测试用例 第三章 软件测试方法与测试用例 1软件测试的基本方法 根据G.J. Myers观点--软件测试的目的: 软件测试是为了发现错误而执行程序的过程 一个好的测试能够在第一时间发现程序中存在的错误 一个好的测试是发现了至今尚未发现的错误的测试。 1 软件测试方法分类 根据测试对象在测试过程中是否发生状态变化:   动态测试和静态测试 根据对测试对象了解的程度(按哲学观点):   黑盒测试和白盒测试 测试方法 黑盒子和白盒子 2 黑盒测试法(black-box testing 概念:也称功能测试、数据驱动测试或基于规格说明的测试。不关心程序内部结构,用于验证产品所应具有的功能是否实现,每个功能是否都能正常使用,是否满足用户的要求。 测试范围:针对程序接口和用户界面进行测试,只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息,并且保持外部信息的完整性。 用途:主要用于软件确认测试。 方法:等价类划分、边界值分析、错误推测法、因果图。 发现问题类型: 是否有不正确或遗漏了的功能; 在接口上,能否正确地接受输入数据,能否产生正确的输出信息; 访问外部信息是否满足要求; 性能上是否满足要求; 界面是否错误,是否不美观; 初始化和终止错误。 黑盒测试的数据:是根据规格说明书决定的。 3 白盒测试法(white-box testing 概念:也称结构测试、逻辑驱动测试或基于程序的测试。已知产品内部工作流程,清楚软件程序的结构和语句,按照程序内部的结构测试程序。要求对程序的结构特性做到一定程度的覆盖,对所有逻辑路径进行测试,并检验内部控制结构和数据结构是否有错。 测试范围:测试程序内部的变量状态、逻辑结构、运行路径等,检验程序中的每条通路是否能按预定要求正确工作,检查程序内部动作或运行是否符合设计规格要求,所有内部成分是否按规定正常进行。 用途:主要用于软件验证测试。 方法:逻辑覆盖、循环覆盖和基本路径测试。 白盒测试原则和说明 原则: 保证每个模块中所有独立路径至少被使用一次; 对所有逻辑值均测试为真值和假值; 在上下边界及可操作范围内运行所有循环; 检查内部数据结构以确保其有效性。 说明: 穷举路径测试绝不能查出程序违反了设计规范,即程序在实现一个不是用户需要的功能; 穷举路径测试不可能查出程序中因遗漏路径而出错; 穷举路径测试可能发现不了一些与数据相关的错误。 黑盒测试和白盒测试比较 4)静态的和动态的测试 静态测试 概念:静态测试就是静态分析,对模块的源代码进行研读,查找错误或收集一些度量数据,不需要对代码进行编译和仿真运行。 测试范围:软件产品的设计规格说明书的审查,程序代码的阅读、审查等。 方法:人工检测和计算机辅助静态分析手段进行检测。只进行特性分析。 人工检测:人工审查或评审软件。偏重于编码风格、质量的检验。可有效发现逻辑设计和编码错误。 计算机辅助静态分析:利用静态分析工具对被测程序进行特性分析,从程序中提取一些信息,以便检查程序逻辑的各种缺陷和可疑的程序构造。 静态测试的特征 静态测试(方法)的主要特征: 不利用计算机运行被测试的程序,而是采用其它手段达到检测的目的。 静态测试:对被测程序进行特性分析的一些方法的总称。 一种自动化的代码检验方法 静态分析可以做到的工作 可能发现的程序欠缺: 用错的局部变量和全程变量; 不匹配的参数; 不适当的循环嵌套和分支嵌套; 不适当的处理顺序; 无终止的死循环; 未定义的变量; 不允许的递归; 等等… 静态分析可以做到的工作 找到潜伏着的问题的根源: 未使用过的变量; 不会执行到的代码; 未引用过的标号; 提供间接涉及程序欠缺的信息: 每一类型语句出现的次数; 所用变量和常量的交叉引用表; 标识符的使用方式; 违背编码规则。 动态测试 概念:动态测试是通过观察代码运行时的动作来提供执行跟踪、时间分析,以及测试覆盖度方面的信息。它通过实际运行程序发现错误。 测试范围:通过有效的测试用例,对应的输入/输出关系来分析被测程序的运行情况。 5)自动测试和随机测试 6)验证和确认(V V) 2 人工测试概述 1)人工测试技术概述 软件审查会(software inspections),能有效地发现30%到70%的逻辑设计错误和编码错误。 2)软件审查 审查会是使非开发人员的力量与开发人员结合起来,利用集体的智慧查找软件产品中存在的问题,从而保证软件产品质量的有效手段。 软件评审(review) 3)软件审查的作用 软件审查所的数据的使用 充分利用软件审查所获得的数据指导和改进开发工作,将是十分有益的。 作为软件开发进程控制的审查 阶段审查所发现的问题主要有三种表现形式: 遗漏--

文档评论(0)

bbnm58850 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档