(答案整理)11《软件测试》复习

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《软件测试》复习提纲

1.什么是软件测试?软件测试的意义?

软件测试是为了尽快尽早地发现在软件产品中所存在的各种软件缺陷而展开的贯穿整个软件开发生命周期、对软件产品(包括阶段性产品)进行验证和确认的活动过程。

答案1:软件测试是为了发现错误而执行程序的过程。

答案2:软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计的一批测试用例(即输入数据及其预期的输出结果),并利用这些测试用例运行程序,以及发现错误的过程。

意义:确保软件的功能符合用户的需求,把尽可能多的问题在发布或交付前发现并改正。

2.什么是软件缺陷?请举例。哪里出现的缺陷最多?

软件缺陷就是软件产品中所存在的问题,最终表现为用户所需要的功能没有完全实现,未满足用户的需求。

举例:缺点(defect)异常(anomaly)偏差(variance)失败(failure)缺陷(bug)故障(fault)问题(problt)错误(error) 规格说明书出现的缺陷最多。

3.软件测试是否就是程序测试?哪些可以作为软件测试的对象?

不是。对象:程序、数据(库)、文档、服务

4.软件测试的目的是什么?软件测试的目标是什么?软件测试的原则是什么?

测试的目的就是发现软件中的各种错误和缺陷,但不是唯一目的,软件测试存在多种目的,其中最重要的三条为:(1)证明所做的是客户所需的(2)确保编码人员正确理解设计的意图(3)通过回归测试来保证目前运行的程序在将来仍然可以正常工作。

目标:确保软件完成了它所承诺或公布的功能;为软件的质量评估提供依据;确保软件满足性能的要求;确保软件是健壮的和适应用户环境,为软件质量改进和管理提供帮助原则:1.所有测试的标准都是建立在用户需求之上2.软件测试必须基于“质量第一”的思想去开展各项工作3.事先定义好产品的质量标准4.软件项目一启动,软件测试也就开始,而不是等程序写完才开始进行测试5.穷举测试时不可能的6.第三方进行测试会更客观更有效7.软件测试计划是做好软件测试工作的前提8.测试用例是设计出来的,不是写出来的9.对主观错误较多的程序段,应进行更深入的测试10.重视文档,妥善保管一切测试过程文档。

5.软件测试如何分类?

按照程序是否执行:静态测试(审查、评审和走查)、动态测试

按照测试用例的设计方法:白盒测试、黑盒测试

按照开发阶段划分:单元测试、集成测试、系统测试、验收测试

按照测试实施的组织划分:开发方测试、用户测试(β测试)、第三方测试

按照是否使用工具:手工测试、自动化测试

/按测试范围分:单元测试,组件测试,集成测试,系统测试,验收测试,安装测试;

/按测试目的:正确性测试(白盒测试、黑盒测试),性能测试,可靠性测试(强壮性测试、异常处理测试、负载测试),安全性测试;

/按测试对象:单元测试,组件测试,模块测试,程序测试,系统测试,文档测试;

/按测试内容:回归测试,功能测试,负载测试,压力测试,性能测试,强度测试,易用

6.

.

2,软件测试从一个已知的条件开始,有预知的结局而调试从未知的条件开始,其结局不可预知

3,软件测试可以计划,可以预先制定测试用例和过程,工作进度可以度量.而调试不能计划,进度不可度量.

4,调试是在测试之后,在方法,思路,策略上都有所不同.

5,测试的对象可以是文档和代码而调试的对象只能是代码

6.调试是随机性的由程序员完成为了程序可运行

测试是有目的性的由测试人员完成为了程序可完成指定功能

调试由开发人员完成,测试由非开发人员完成

7.常见的软件测试模型有哪些?(没有提到优缺点)

V模型从左到右,描述了基本的开发过程和测试行为,明确地标明了测试工程中存在的不同级别,清楚地描述了这些测试阶段和开发过程期间各阶段的对应关系。

优点:明确地标明了测试工程中存在的不同级别,清楚地描述了这些测试阶段和开发过程期间各阶段的对应关系缺点:没有明确地说明早期的测试,不能体现“尽早地”和“不断地”进行软件测试原则。

W模型优点:测试与开发是同步进行的,可以显著的节约总体测试时间缺点:需要有严格的指令表示上一阶段完全结束才可以开始下一个阶段

H模型、X模型等

8.一个软件测试包含哪些基本过程?

制定测试计划

测试设计与开发:1测试环境设计2测试用例设计与开发3辅助工具开发

测试执行与管理:1准备测试环境2实施测试

9.什么是测试用例?它包含哪些内容?通常对测试用例有哪些要求?

测试用例是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,以便测试某个程序路径或核实是否满足某个特定需求

内容:包括测试编号,测试环境,测试目的,测试操作步骤,测试预期结果

测试用例要求:对需求覆盖的完整性有效性清晰性可理解性可维护性

发流程的新型的开发方法。它要求在编写某个功能的代码之前先编写测试代码,然后只编写使测试通过的功能代码,通过测试来推动整个开发的进行。这有助于编写简洁可用和高质量的代码,并加速开发过程。它以不断的测试推动代码的开发,既简化了代码,又保证了软件质量。

TDD中文是测试驱动开发,它是一种以“测试先行”为原则的开发方法,开发人员在编写产品代码前,通常先写出对应的测试程序,后在编写产品代码,然后再进行测试。

11.什么是白盒测试?白盒测试有哪些测试方法及其含义?这些方法的强弱程

度怎样?

白盒测试(又称结构测试)把测试对象看作一个透明的盒子,测试人员根据程序内部的逻辑结构及有关信息设计测试用例,检查程序中所有逻辑路径是否都按预定的要求正确地工作。

测试方法:逻辑覆盖测试:主要考察使用测试数据运行被测程序时对程序逻辑的覆盖程度。通常希望选择最少的测试用例来满足所需的覆盖标准。主要的覆盖标准有:语句覆盖判定覆盖条件覆盖判定-条件覆盖条件组合覆盖路径覆盖。基本路径测试(路径分析测试):是Tom McCabe提出的一种白盒测试技术,这种方法首先根据程序或设计图画出控制流图,并计算其区域数,然后确定一组独立的程序执行路径(称为基本路径),最后为每一条基本路径设计一个测试用例。循环测试:循环分为4种不同类型:简单循环、嵌套循环、串接循环和非结构循环。数据流测试。

12.什么是黑盒测试?黑盒测试有哪些测试方法及其含义?

黑盒测试依据软件的需求规约,而不考虑程序的内部结构与特性,检查程序的功能是否符合需求规约的要求。(黑盒测试是一种从用户观点出发的测试,主要以软件规格说明书为依据,对程序功能和程序接口进行的测试)

测试方法:等价类划分法:等价类划分方法将所有可能的输入数据划分成若干个等价类,然后在每个等价类中选取一个代表性的数据作为测试用例。边界值分析法:边界值分析也是一种黑盒测试方法,是对等价类划分方法的补充。大量的错误发生在输入范围的内部。

比较测试:通常,可由二支软件开发队伍,根据相同的需求规格说明分别开发二个软件版本,然后,用相同的测试用例对二个版本的软件分别进行测试,比较二个版本软件的测试结果,如果测试结果相同,则可认为二个版本的软件都是正确的,如果测试结果不同,则要分析各个版本,以发现错误的所在。此测试称为比较测试。错误猜测:错误猜测是一种凭直觉和经验推测某些可能存在的错误,从而针对这些可能存在的错误设计测试用例的方法。

因果图法:因果图方法是一种帮助人们系统地选择一组高效测试用例的方法,它既考虑了输入条件的组合关系,又考虑了输出条件对输入条件的依赖关系,即因果关系,其测试用例发现错误的效率比较高。

相关文档
最新文档