ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:189.42KB ,
资源ID:8078683      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-8078683.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(软件测试复习资料Word文档格式.docx)为本站会员(b****4)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

软件测试复习资料Word文档格式.docx

1、(1) 测试是程序的执行过程,目的在于发现错误;(2) 一个好的测试用例在于能发现至今未发现的错误;(3) 一个成功的测试是发现了至今未发现的错误的测试。换言之,测试的目的是系统地找出软件中潜在的各种错误和缺陷。 能够证明软件的功能和性能与需求说明相符合。测试不能表明软件中不存在错误,它只能说明软件中存在错误软件测试的原则:1. 应当把“尽早地和不断地进行软件测试”作为软件开发者的座右铭。2. 测试用例应由测试输入数据和对应的预期输出结果这两部分组成。3. 程序员应避免检查自己的程序。4. 在设计测试用例时,应包括合理的输入条件和不合理的输入条件5. 充分注意测试中的群集现象。经验表明,测试后

2、程序中残存的错误数目与该程序中已发现的错误数目成正比。6. 严格执行测试计划,排除测试的随意性。7. 应当对每一个测试结果做全面检查。8. 妥善保存测试计划,测试用例,出错统计和最终分析报告,为维护提供方便。白盒测试:此方法把测试对象看做一个透明的盒子,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。通过在不同点检查程序的状态,确定实际的状态是否与预期的状态一致。因此白盒测试又称为结构测试或逻辑驱动测试。白盒测试又分为逻辑覆盖测试和路径测试包括:v 逻辑覆盖测试法:通常用流程图来设计测试用例,它考察的重点是图中的判定框。因为这些判定若不是与选择结

3、构有关,就是与循环结构有关。v 逻辑覆盖测试包括:语句覆盖、分支(判定)覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖。v 路径测试法:设计足够的测试用例,覆盖程序中所有可能的路径。v 路径测试包括:点覆盖、边覆盖、路径覆盖计算环路复杂性的方法:V(G)=简单判定节点数+ 1 V(G) = E-N+2 (E 是边数,N是定点数)V(G)=封闭区域数+ 1在对被测软件进行白盒测试时,主要对程序进行如下几点检查:()保证一个模块中的所有独立执行路径至少测试一次; ()对所有逻辑判定取值“true”和“false”的两种情况都至少测试一次; ()在循环边界和运行界限内执行循环体; ()测试内部数据结构

4、的有效性白盒测试与调试的异同1、从承担的任务来看,白盒测试同其他类型测试一样,它的任务是发现所开发的项目中的缺陷;但是,调试不属于测试,其任务是纠正软件中的缺陷。 2、从最终的结果来看,白盒测试有预知的结果,不可预知的只是程序是否通过测试,并且成功测试的结果是发现错误的症状,从而引起调试的进行;而调试的结果是消除项目中的错误。3、从执行的过程来看,测试是一个发现错误、改正错误、重新测试的过程;而调试是一个推理过程。 4、从准备工作来看,测试从已知的条件开始,使用预先定义的程序;调试一般是以不可知的内部条件开始,做统一性调试 。 5、从执行的计划性来看,测试是有计划的并要进行测试设计;而调试则不

5、受时间约束。 6、从执行的人员来看,测试经常是由独立的测试组在不了解软件设计的条件下完成的,而调试必须由程序员来完成。白盒测试的优缺点 1)优点 可构成测试数据对特定程序部分测试,可以检测代码中的每条分支和路径; 揭示隐藏在代码中的错误; 对代码的测试比较彻底; 有较多工具支持; 有一定的充分性度量手段。2)缺点 工作量大, 成本高。通常只用于单元测试,有应用局限; 无法检测代码中遗漏的路径和数据敏感性错误; 不能验证规格说明的正确性; 无法对规格说明中未实现的部分进行测试; 不易生成测试数据(通常)。循环测试分为4种不同类型:简单循环、连锁循环、嵌套循环和非结构循环。黑盒测试:这种方法是把测

6、试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。黑盒测试又叫做功能测试或数据驱动测试等价类划分, 边界值分析, 错误推测法, 因果图在对被测软件进行黑盒测试时,主要对程序进行如下几点检查:功能不正确或不完整; 接口错误; 接口所使用的数据结构错误; 行为或性能错误; 初始化和终止错误。黑盒测试和白盒测试的异同1. 执行测试人员不同 黑盒测试通常由用户以及非开发人员来进行;而白盒测试通常要有了解软件内部结构的开发人员来做。2. 测试覆盖目标不同 如果我们用一个盒子来代替整个软件系统,那么黑盒测试可以看成是一种系

7、统测试。而对盒子内部的多个单元的测试就可以称作为白盒测试。 另外一种区别就是,二者的覆盖目标不同。黑盒测试的目标是覆盖所有的用户需求;而白盒测试的目标是覆盖所有的代码。3、测试动机不同 有效的安全测试有时也需要详细了解代码以及系统结构,此时把这些技术称作白盒测试。 另外一种风险测试的目标可能就只是测试软件是否能够为用户提供预期输出。可用性测试就是如此,所以被称作黑盒测试。 4、测试方法不同 一个最普通的区别就是行为测试设计是基于功能需求来定义测试,而结构测试则是基于代码本身来定义测试的。这就是两种设计测试的方法。因为行为测试是基于外部功能定义的,所以称作黑盒测试;结构测试则是基于代码内部结构来

8、定义的,所以称作白盒测试。5、评估测试方法不同 一些技术是使用代码工具来跟踪软件内部的工作过程,因此称为白盒测试技术。与之相比,黑盒测试技术只是简单的观察程序的正常输出。黑盒测试的优缺点1. 优点 对于较大的代码单元来说,效率高; 测试人员不需要了解实现的细节,包括具体的编程语言; 测试员和程序员可以由不同的人员来担任; 从用户的角度进行测试,容易被理解和接受; 有助于暴露任何规格不一致或有歧义的问题; 测试用例的设计可以在规格说明完成之后马上进行; 容易入手生成测试数据; 适用于各阶段测试。2. 缺点 实际上,只有一小部分可能的输入被测试到,某些代码得不到测试; 如果没有清晰、简洁的规格说明

9、,难以设计测试用例; 如果测试人员不知道开发人员已经执行过该测试用例,会存在不必要的重复测试; 会有很多程序路径没有被测试到; 不能直接针对可能隐蔽了许多问题的特定程序段进行测试,; 如果规格说明有误,则无法发现; 不易进行充分性测试。测试计划和测试文档在测试过程中的作用1、测试文档有助于测试任务的完成。2、使用测试文档可以更好的协调测试任务与测试过程。3、测试文档为测试项目的组织、规划与管理提供了一个架构。软件测试的策略:单元测试、组装测试、确认测试和系统测试。单元测试又称模块测试,是针对软件设计的最小单位 程序模块,进行正确性检验的测试工作。其目的在于发现各模块内部可能存在的各种差错。单元

10、测试需要从程序的内部结构出发设计测试用例。多个模块可以平行地独立进行单元测试单元测试的内容(1) 模块接口测试 (2) 局部数据结构测试 (3) 路径测试 (4) 错误处理测试 (5) 边界测试由于一个模块或一个方法(Method)并不是一个独立的程序,在考虑测试它时要同时考虑它和外界的联系,因此要用到一些辅助模块,来模拟与所测模块相联系的其他模块。一般把这些辅助模块分为两种: 1、驱动模块(driver):相当于所测模块的主程序。它接收测试数据,把这些数据传送给所测模块,最后再输出实测结果。 2、桩模块(stub):用于代替所测模块调用的子模块。用以代替所测模块调用的子模块自顶向下的单元测试

11、策略: 将模块按系统程序结构,沿控制层次自顶向下进行组装一)步骤: 1. 从最顶层开始,把顶层调用的单元做成桩模块。 2. 对第二层测试,使用上面已测试的单元做驱动模块。 3. 依次类推,直到全部单元测试结束。 二)优点:可以在集成测试之前为系统提供早期的集成途径。 三)缺点:单元测试被桩模块控制,随着单元测试的不断进行,测试过程也会变得越来越复杂,测试难度以及开发和维护的成本都不断增加;要求的低层次的结构覆盖率也难以得到保证;由于需求变更或其他原因而必须更改任何一个单元时,就必须重新测试该单元下层调用的所有单元;低层单元测试依赖顶层测试,无法进行并行测试,使测试进度受到不同程度的影响,延长测

12、试周期。 四)总结:从上述分析中,不难看出该测试策略的成本要高于孤立的单元测试成本,因此从测试成本方面来考虑,并不是最佳的单元测试策略。自底向上的单元测试:是从程序模块结构的最底层的模块开始组装和测试 1、先对模块调用图上的最底层模块开始测试,模拟调用该模块的模块为驱动模块。2、其次,对上一层模块进行单元测试,用已经被测试过的模块做桩模块。 3、依次类推,直到全部单元测试结束。不需要单独设计桩模块。随着单元测试的不断进行,测试过程会变得越来越复杂,测试周期延长,测试和维护的成本增加;随着各个基本单元逐步加入,系统会变得异常庞大,因此测试人员不容易控制;越接近顶层的模块的测试其结构覆盖率就越难以

13、保证;另外,顶层测试易受底层模块变更的影响,任何一个模块修改之后,直接或间接调用该模块的所有单元都要重新测试。由于只有在底层单元测试完毕之后才能够进行顶层单元的测试,所以并行性不好。另外,自底向上的单元测试也不能和详细设计、编码同步进行。相对其它测试策略而言,该测试策略比较合理,尤其是需要考虑对象或复用时。它属于面向功能的测试,而非面向结构的测试。对那些以高覆盖率为目标或者软件开发时间紧张的软件项目来说,这种测试方法不适用。测试用例设计步骤步骤1:首先使被测单元运行; 这个阶段适合的技术有: 模块设计说明导出的测试 对等区间划分 步骤2:正面测试(Positive Testing) 这个阶段适

14、合的技术: 设计说明导出的测试 状态转换测试 步骤3:负面测试(Negative Testing) 适合的技术有: 错误猜测 边界值分析 内部边界值测试 状态转换测试 步骤4: 模块设计需求中其它测试特性用例设计 适合的技术:设计说明导出的测试 步骤5:覆盖率测试用例设计 分支测试 条件测试 数据定义使用测试 步骤6:测试执行 步骤7:完善代码覆盖 条件测试 设计定义试验测试数据流测试技术:方法内部测试,用于测试单个类方法方法间测试,用于测试一个类中不同方法通过过程调用的相互作用类内部测试,用于测试一系列方法的调用集成测试的定义:根据实际情况对程序模块采用适当的的集成测试策略组装起来,对系统的

15、接口以及集成后的功能进行正确性检验的测试工作。集成测试的层次划分:对于传统软件来说,按集成粒度不同,可以把集成测试分为3个层次,即:模块内集成测试,子系统内集成测试,子系统间集成测试集成测试策略一、基于分解的集成二、三明治集成三、修改过的三明治集成四、基于调用图的集成五、基于路径的集成集成测试环境在搭建集成测试环境时,可以从以下几个方面进行考虑:1、硬件环境2、操作系统环境3、数据库环境 4、网络环境5、测试工具运行环境6、其它环境集成测试用例设计 一、为系统运行设计的用例 可使用的主要测试分析技术:等价类划分 边界值分析 基于决策表的测试二、为正向测试设计用例输入域测试 输出域测试 等价类划

16、分 状态转换测试 规范导出法三、为逆向测试设计用例错误猜测法 基于风险的测试 基于故障的测试 边界值分析 特殊值测试 状态转换测试四、为满足特殊需求设计用例规范导出法五、为高覆盖设计用例功能覆盖分析 接口覆盖分析系统测试定义:系统测试就是将已经集成好的软件系统,作为整个计算机系统的一个元素,与计算机硬件、外设、某些支持软件、数据和人员等其它系统元素结合在一起,在实际运行(使用)环境下,对计算机系统进行一系列的组装测试和确认测试。系统测试过程要经历以下几个阶段:制定系统测试计划、设计系统测试、实施系统测试、执行系统测试和评估系统测试容量测试:容量测试是面向数据的,在系统正常运行的范围内测试并确定

17、系统能够处理的数据容量。也就是观察系统承受超额的数据容量的能力。安全性测试:要验证系统内的保护机制能否抵御入侵者的攻击。所谓的系统安全性就是让系统非法入侵者花费更多的时间、付出更大的代价来交换其所获得的系统信息,即让非法者获得的一切信息内容贬值。评价标准:有效性;生存性;精确性;出错反应时间;吞吐量 系统测试类型一、功能测试:功能测试属于黑盒测试技术范畴,是系统测试中要进行的最基本的测试,它不用考虑软件内部的具体实现过程二、协议一致性测试:分布式系统中,很多计算功能的完成需要由分布式系统内的多台计算机相互进行通信、交换信息、协调合作来完成的,必须遵循一定的规则(协议)。 所以要进行协议测试。三

18、、性能测试:性能测试在软件的质量保证中起着重要的作用。可从三个方面进行性能测试:应用在客户端性能的测试、应用在网络上性能的测试和应用在服务器端性能的测试面向对象的测试与传统测试的比较传统的测试计算机软件的策略是从“小型测试”开始,逐步走向“大型测试”,且单元测试集中在最小的可编译程序单位子程序。 面向对象程序的结构不再是传统的功能模块结构,而是作为一个整体,并且对每个开发阶段都有不同以往的要求和结果,已经不可能用功能细化的观点来检测面向对象分析和设计的结果。面向对象测试的层次 以方法为单元 以类为单元自动化测试:自动化测试就是希望能够通过自动化测试工具或其他手段,按照测试工程师的预定计划进行自

19、动的测试,目的是减轻手工测试的工作量,从而达到提高软件质量的目的自动化测试的优点1、对程序的新版本运行己有的测试,即回归测试。2、可以运行更多更频繁的测试。3、可以进行一些手工测试难以完成或不可能完成的测试。4、充分地利用资源。5、测试具有一致性和可重复性。6、测试具有复用性。7、缩短软件发布的时间。8、增强软件的可靠性。自动化测试的缺点1、自动化测试不能取代手工测试, 测试主要还是要靠人工的。2、新缺陷越多,自动化测试失败的几率就越大。3、工具本身不具有想象力4、技术问题、组织问题、脚本维护5、测试工具与其他软件的互操作性自动测试和手动测试比较:一般来说,手工测试可以取代任何类型、功能的自动测试,但在多用户并发等情况下,手工测试是很难实现的,这时自动测试就发挥作用了。另外,使用自动测试工具可以减少很多重复的手工劳动,精确复制缺陷,提高测试覆盖率,从而提高产品质量BUG管理流图

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2