《课本复习要点》由会员分享,可在线阅读,更多相关《课本复习要点(8页珍藏版)》请在金锄头文库上搜索。
1、软件测试期末考试重点复习软件测试技术*重点复习(带测试案例分析题)一、 判断题(10分)负载测试(P189):负载测试是一个通过分析软件应用程序和支撑架构,模拟真实环境的使用,来确定能够接受的性能的过程。负载测试的目标是:确定在各种工作负载下系统的性能,主要是测试当负载逐渐增加时,系统组成部分的相应输出项(如通过量、响应时间、CPU负载、内在的使用等)来决定系统的性能。 判定语句: 路径: 验收测试(P200):验收测试是将程序与其最初的需求及最终用户当前的需要进行比较的过程。验收测试是软件产品质量的最后一关。测试主要从用户角度着手。参与者主要是用户和少量的程序开发人员。 黑盒测试:(亦功能测
2、试、行为测试、数据驱动测试、基于规格说明的测试)是一种从用户观点出发的测试。这种方法把程序当作一个黑盒,忽略其内部结构特性.测试者只知道输入与输出之间的关系或程序功能,依靠程序功能需求说明书,确定测试用例和推断测试结果的正确性。测试用例的设计基于产品的功能、目的是检查程序各个功能是否实现,并检查其中的功能错误。黑盒测试所要发现的外部行为错误:1) 功能不正确或不完整;2)接口错误;3) 接口所使用的数据结构错误;4) 行为或性能错误;5) 初始化和终止错误; 代码评审员: 集成测试:集成测试(是对已测试过的模块进行组装)就是对集成到一起的软件组件和硬件组件进行的测试,用于评估这些组件之间能否进
3、行正确的交互.目的主要是:检验与软件设计相关的程序结构问题、检查各种组件之间的接口。集成测试的完成方法:黑盒测试. 测试:Beta测试是从用户角度进行的测试,是由软件的多个用户在一个或多个用户的实际使用环境下进行的测试。它是在开发者无法控制的软件环境下进行的软件现场应用。两种不同的途径:公共测试和私有测试。二、 不定项选择题(20分)验收测试通过的准则: 跟踪缺陷的定义: 软件测试工具的使用(目的是什么):A、帮助测试寻找问题B、协助问题的诊断C、节省测试时间 软件测试评审会的组成人员:测试计划的目的:。使测试工作顺利进行 B.使项目参与人员沟通更舒畅 C. 使测试工作更加系统化 测试是什么:
4、lha测试是由选定的用户在可控的环境下进行的产品早期性测试。在此测试中,确定并记录要研究的功能和业务任务,但没有可以遵循的特定测试用例。测试内容由各测试员决定.这种验收测试方法不像正式验收测试那样组织有序,而且更为主观。大多数情况下,非正式验收测试是由最终用户组织执行的。黑盒测试具体有哪些方法:1)边界值分析法) 等价类划分法) 因果图法) 决策表法5)功能图分析法6) 错误推测法7)判定表驱动分析法8)正交试验设计法) 状态转换测试10) 分支测试 测试设计人员的职责:)确定并描述相应的测试技术。)确定相应的测试支持工具)定义并维护测试自动化架构。)详述和验证需要的测试环境配置.5) 验证与
5、评估测试途径 测试按形态怎么分类:A.建构性测试 B. 系统测试C. 专项测试 瀑布模型的阶段:A. 分析B。 设计C.编码 测试 软件质量包括的内容:1) 软件产品的质量,即满足使用要求的程度。) 软件开发过程的质量,即能否满足开发所带来的成本、时间和风险等要求.3) 软件在其商业环境中所表现的质量。 什么叫局部数据结构测试:局部数据结构测试:设计测试用例检查数据类型说明、初始化、默认值等方面的问题,还要查清全程数据对模块的影响. 软件测试结束的标志是什么: 测试的阶段有哪些:1) 需求规格说明、设计、编码阶段为引入程序错误阶段;)测试阶段为发现错误阶段;3) 缺陷分类、缺陷分离、缺陷排除阶
6、段为清除程序错误阶段; 导致软件缺陷的原因:1)技术问题 2) 算法错误. ) 语法错误。 ) 计算和精度问题。 )系统结构不合理,造成系统性能问题。6) 接口参数不匹配出现问题。 六大质量特性有哪些:1) 功能性2)可靠性3) 易用性4) 效率性5) 可维护性6) 可移植性三、 名词解释(25分题) 测试、测试、负载测试、压力测试(强度测试):测试:Alh测试是由选定的用户进行的产品早期性测试,这个测试一般在可控的环境下进行。 测试(9):Bet测试是从用户角度进行的测试,是由软件的多个用户在一个或多个用户的实际使用环境下进行的测试。它是在开发者无法控制的软件环境下进行的软件现场应用.强度测
7、试:也称压力测试、负载测试.强度测试是要破坏程序,检测非正常的情况系统的负载能力。强度测试模拟实际情况下的软硬件环境和用户使用过程的系统负荷,长时间或超负荷地运行测试软件来测试系统,以检验系统能力的最高限度,从而了解系统的可靠性、稳定性等。逻辑覆盖、路径覆盖: 逻辑覆盖:是以程序内部的逻辑结构为基础的设计测试用例的技术。它属于白盒测试. 路径覆盖:路径覆盖是在组件中被测试执行到的路径的百分比。要求设计若干测试用例,执行被测试程序时,能够覆盖程序中所有的可能路径. 软件测试活动生命周期: 软件测试活动生命周期:是指软件从进入测试到退出测试的过程中,所要经历的引入程序错误、通过测试发现错误和清除程
8、序错误的几个阶段.桩模块、驱动模块:桩模块(P15):用于代替所测模块调用的子模块.桩模块可以进行少量的数据操作,不需要实现子模块的所有功能,但要根据需要来实现或代替子模块的一部分功能. 驱动模块(P0):相当于所测模块的主程序。它接收测试数据,把这些数据传送给所测模块,最后再输出实际测试结果。 大爆炸集成、三明治集成、改进的三明治集成、高频集成: 大爆炸集成(P153):属于非增值式集成的一种方法,也称为一次性组装或整体拼装。这种集成策略的做法就是把所有通过单元测试的模块一次性集成到一起进行测试,不考虑组件之间的互相依赖性及可能存在的风险。 三明治集成(158):一种混合增量式测试策略,综合
9、了自顶向下和自底向上两种集成方法的优点,因此也属于基于功能分解的集成。这种方法桩和开发工作都比较小,但增加了定位缺陷的难度。 改进的三明治集成(P0):利用较高的并行度弥补三明治集成中不能充分测试中间层的缺点。但根据中间层选择是否恰当,可能增加驱动模块和桩模块设计的工作量。 高频集成(P165):高频集成测试是指同步于软件开发过程,每隔一段时间对开发团队的现有代码进行一次集成测试.该集成测试方法频繁地将新代码加入到一个已经稳定的基线中,以免集成故障难以发现,同时控制可能出现的基线偏差。、四、 简答题(30分/6题) 软件测试和软件测试结束的标准:(可能考法:什么是软件测试,软件测试分为哪几个阶
10、段)软件测试是为了发现错误而执行程序的过程。或者说,软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计一批测试用例(即输入数据及其预期的输出结果),并利用这些测试用例去运行程序,以发现程序错误的过程。软件测试过程按各测试阶段的先后顺序可分为单元测试、集成测试、确认(有效性)测试、系统测试和验收(用户)测试5个阶段软件测试退出标准为:完成测试需求中列出的所有功能及测试过程中发现缺陷的回归测试. 软件缺陷等级:) 致命的:致命的错误,造成系统或应用程序崩溃、死机、系统悬挂,或造成数据丢失、主要功能完全丧失等。2) 严重的:严重错误,指功能或特性没有实现,主要功能部分丧失,次要功能完全
11、丧失,或致命的错误声明。3) 一般的:不太严重的错误,这样的软件缺陷虽然不影响系统的基本使用,但没有很好地实现功能,没有达到预期效果.如次要功能丧失,提示信息不太准确,或用户界面差,操作时间长等。 ) 微小的:一些小问题,对功能几乎没有影响,产品及属性仍可使用,如有个别错别字、文字排列不整齐等. 阶段评审和同行评审:同行评审是一种重要而有效的工程方法,在软件产品工程中调用此方法,可通过法根式审查、结构化走查或者一些其他的学院式的评审方法加以实施。其目的是及早和高效地去除软件工作中的缺陷,必然结果是增强对软件工作产品和可预防缺陷的了解。阶段评审是利用在需求分析阶段所选择并制定的标准、规范以及计划
12、的安排,对软件工程各阶段的进展、完成质量及出现的问题进行正式评审,确保过程计划并遵守标准和规范执行,然后形成报告。当发现问题是,要准寻逐级解决的原则,将处理结果通知相关人员,记录解决过程及结果以作日后改进重要参考资料。两者都是有关软件质量管理和保证的重要内容,二者相辅相成,缺一不可。 单元测试策略(特别注意退出的原则)和集成测试的策略(P106): 单元测试策略主要有三种方式:1) 自顶向下的单元测试策略:2)自底向上的单元测试策略:3) 孤立测试的单元测试策略: 单元测试退出的标准: 1)单元测试用例设计已经通过评审)核心代码100 经过CoeRvew3) 单元测试功能覆盖率达到0 4)单元
13、测试代码行覆盖率不低于8 5) 所有发现缺陷至少60都纳入缺陷追踪系统且各级缺陷修复率达到标准 6) 不存在A、B类缺陷 7) 、D、E类缺陷允许存在 8) 按照单元测试用例完成了所有规定单元的测试) 软件单元功能与设计一致 集成测试的策略:1)大爆炸集成) 自顶向下集成) 自底向上集成4) 三明治集成5) 高频集成6) 分层集成7)分布式集成8) 基于路径、功能、进度、风险、事件、使用等的集成 等等 恢复性测试和安全性测试:恢复性测试也叫容错测试,用来检查系统的容错能力。通常若计算机系统出现错误,就必须在一定时间内从错误中恢复过来,修正错误并重新启动系统。恢复测试是通过各种手段,让软件强制性
14、地出错,使其不能正常工作,从而检验系统的恢复能力. 在进行恢复性测试时,要考虑的主要问题有:1) 恢复期间的安全性过程。2) 恢复处理日志方面的能力。3) 当出现供电问题时的恢复能力。4) 恢复操作后系统性能是否下降。 常用的恢复测试用例的设计方法:规范导出法、错误猜测法、基于故障的测试。 安全性测试就是要验证系统内的保护机制能否抵御入侵者的攻击。 安全性测试的测试人员需要在测试活动中,撒气不同的入侵方式来攻击系统的安全机制,想尽一切办法来获取系统内的保密信息。 通常需要模拟的活动有:1) 获取系统密码2)破坏保护客户信息的软件) 独占整个系统资源,使别人无法使用) 使得系统瘫痪,企图在恢复系统阶段获得利益等 判断系统安全性性能的指标:1) 有效性:启动严格的安全性性能所花费的时间占启动整个系统所花费时间的比例。2) 生存性:当错误发生时,系统对紧急操作的支持,对错误的补救措施以及恢复到正常操作的能力,即系统的抗挫能力。3) 精确性:衡量系统安全性控制的精度指标,围绕所出现的错误数量、发生频率及其严重性判断.4) 反应时间:出错时系统响应速度的快慢,一个安全性较强的系统要具备快速的反应速度。5) 吞吐量:用户和服务请求的峰值和平均值。五、 设计案例