软件测试技术复习题

上传人:飞*** 文档编号:36368099 上传时间:2021-10-30 格式:DOCX 页数:23 大小:140.40KB
返回 下载 相关 举报
软件测试技术复习题_第1页
第1页 / 共23页
软件测试技术复习题_第2页
第2页 / 共23页
软件测试技术复习题_第3页
第3页 / 共23页
点击查看更多>>
资源描述
软件测试技术复习题(1004)一、基本要求1、软件测试概述( 1)软件可靠性问题、软件缺陷与故障、软件缺陷产生的原因( 2)软件测试基本概念( 3)软件开发过程( 4)软件测试过程、软件开发与软件测试的关系( 5)软件质量与软件质量管理的概念2、软件测试策略与过程( 1)软件测试的复杂性概念( 2)软件测试方法与策略:静态测试与动态测试、黑盒测试与白盒测试( 3)软件测试过程:单元测试、集成测试、确认测试、系统测试、验收测试( 4)面向对象的软件测试( 5)软件调试的概念、软件测试与调试的关系3、功能(黑盒)测试及其用例设计( 1)黑盒测试法的概念( 2)三角形问题、NextDate 函数问题( 3)等价类划分法( 4)边界值分析法( 5)因果图法( 6)决策表法( 7)黑盒测试应用案例4、结构(白盒)测试及其用例设计( 1)白盒测试法的概念( 2)控制流图、环形复杂度、图矩阵( 3)覆盖测试:函数覆盖、条件覆盖、路径覆盖、面向对象的覆盖( 4)路径测试:基本路径测试方法、循环测试方法( 5)白盒测试应用案例5、软件测试实际应用( 1)客户机 / 服务器系统的软件测试:客户机/ 服务器系统的结构测试、网站测试( 2)面向对象的软件测试:面向对象的软件测试模型、基于类的测试( 3)图形用户界面测试:窗体测试、菜单测试、数据项测试( 4)实时系统性能测试( 5)场景法应用案例6、软件测试管理( 1)软件测试组织管理( 2)软件测试计划和过程管理:制定测试计划、确定测试过程、测试结果分析( 3)软件测试文档管理7、软件自动化测试( 1)软件自动化测试基础:自动化测试概念、自动化测试脚本、自动化测试生存周期( 2)软件自动化测试工具:白盒测试工具、黑盒测试工具二、基本概念I、 软件测试是在软件投入运行前, 对软件需求分析、 设计规格说明和编码实现的最终审查。软件测试所涉及的关键问题包括四个方面: 测试人员、 测试内容、 测试时间和测试方法。2、软件测试过程中需要三类输入:软件配置、测试配置和测试工具。软件测试所涉及的关键问题包括四个方面:测试人员、测试内容、 (测试时间)和测试方法。3、 IEEE 将软件可靠性定义为: 系统在特定环境下, 在给定的时间内无故障运行的概率。 根 据软件测试的定义,软件测试是为了发现错误而执行程序的过程。4、基于 Web 的系统测试不但需要检查和验证是否按照设计的要求运行,而且还要评价系统在不同用户的浏览器端的显示是否合适。5、面向对象单元测试针对程序内部具体单一功能的模块进行测试。从测试的角度来看,继承提供一种机制,通过这种机制,潜在的错误能够从一个类传递到它的派生类。6、使用白盒测试工具所发现的故障可以定位到代码级。7、等价类是输入域的某个子集合,而所有等价类的并集就是整个输入域。因此,等价类的划分原则应该体现完备性和无冗余性。8、基于 Web 的系统测试重要的是,从最终用户的角度进行安全性和可用性测试9、有效的 Web 压力测试系统的关键条件中,量级指的是尽量使单独的操作进行高强度的使用,增加操作的量级。10、对OOP 的测试重点集中在类功能的实现和相应的面向对象程序架构上,主要表现之一为数据成员是否满足数据封装的要求。II、 面向对象技术的特点给测试带来的新问题具体表现有多态和动态绑定增加了系统运行中可能的执行路径,而且给面向对象软件带来了严重的不确定性。对 OOP 的测试重点集中在类功能的实现和相应的面向对象程序架构上。12、测试大纲是软件测试的依据,包括测试项目、测试步骤、测试完成的标准。13、动态测试工具需要实际运行被测系统,并设置断点,向代码生成的(可执行)文件中插入一些监测代码。14、 C/S 体系结构的软件测试通常是从单个客户端开始,然后再逐步集成客户端、服务器和网络系统进行集成测试,最后进行系统的整体测试。15、静态测试分析主要集中在需求文档、设计文档以及程序结构方面。16、对Web 网站测试所采用的测试方法与策略除了黑盒测试、白盒测试、静态测试和动态测试都有可能用到外,还会包括面向对象测试技术的运用。17、软件可靠性是对软件在设计、开发以及所预定的环境下具有能力的置信度的一个度量,是衡量软件质量的主要参数之一。18、按照软件测试的策略和过程分类,软件测试可分为单元测试、集成测试、系统测试、验证测试和确认测试。 在软件测试中, 对已测试过的模块进行组装, 目的在于检验与软件设计相关的程序结构问题的测试称为集成测试。19、实时系统测试的一般步骤:任务测试、行为测试、任务间测试和系统测试。20、 为了达到100的基于状态的上下文覆盖,例行程序必须在每个适当的上下文内被执行。三、简答题1、应用条件/ 判定覆盖进行路径测试可能发现的错误。针对判定和条件覆盖,测试用例可能发现如下错误:( 1)不同数据类型的比较;( 2)不正确的逻辑操作或优先级;( 3)应当相等的地方由于精确度的错误而不能相等;( 4)不正确的判定或不正确的变量;( 5)不正确的或不存在的循环终止;( 6)当遇到分支循环时不能退出;不适当地修改循环变量2、简述软件测试报告的内容软件测试报告是软件测试过程中最重要的文档,它的内容包括:( 1 )记录问题发生的环境( 2)记录问题的再现步骤( 3 )记录问题性质的说明( 4 )记录问题的处理进程3、测试过程中必需的基本测试活动有哪些( 1 )拟定软件测试计划( 2 )编制软件测试大纲( 3 )设计和生成测试用例( 4 )实施测试( 5)生成软件测试报告4、确定软件测试策略时的参考原则( 1)在任何情况下都必须采用边界值分析法这种方法设计出的测试用例发现程序错误的能力最强( 2)必要时采用等价类划分法补充测试用例( 3)采用错误推断法再追加测试用例( 4)对照程序逻辑,检查已设计出的测试用例的逻辑覆盖程度如果没有达到要求的覆盖标准,则应当再补充更多的测试用例( 5)如果程序的功能说明中含有输入条件的组合情况,则应一开始就选用因果图法5、简述软件自动化测试中的脚本技术脚本是一组测试工具执行的指令集合, 也是计算机程序的一种形式脚本可以通过录制测试的操作产生,然后再做修改,这样可以减少脚本编程的工作量当然, 也可以直接用脚本语言编写脚本脚本技术可以分为以下几类:线性脚本是录制手工执行的测试用例得到的脚本结构化脚本类似于结构化程序设计,具有各种逻辑结构(顺序、分支、循环)而且具有函数调用功能共享脚本是指某个脚本可被多个测试用例使用, 即脚本语言允许一个脚本调用另一个脚本数据驱动脚本将测试输入存储在独立的数据文件中关键字驱动脚本是数据驱动脚本的逻辑扩展6、在单元测试时,如果模块不是独立的程序,需要设置一些辅助测试模块简述两种辅助测试模块的作用驱动模块: 用来模拟被测试模块的上一级模块, 相当于被测模块的主程序 它接收数据,将相关数据传送给被测模块,启动被测模块,并打印出相应的结果桩模块: 用来模拟被测模块工作过程中所调用的模块 它们一般只进行很少的数据处理7、简述由面向对象技术的特点给测试带来的新问题封装把数据及对数据的操作封装在一起, 限制了对象属性对外的透明性和外界对它的操作权限,在某种程度上避免了对数据的非法操作, 有效防止了故障的扩散。 但同时,封装机制也给测试数据的生成、测试路径的选取以及测试结构的分析带来了困难。继承实现了共享父类中定义的数据和操作, 同时也可定义新的特征。 子类是在新的环境中存在, 所以父类的正确性不能保证子类的正确性。 继承使代码的重用率得到了提高, 但同时也使故障的传播几率增加。多态和动态绑定增加了系统运行中可能的执行路径, 而且给面向对象软件带来了严重的不确定性,给测试覆盖率的活动带来新的困难。8、 Web 压力测试的意义及有效的压力测试系统的关键条件。( 1) Web 压力测试的意义压力测试是系统测试的一部分, 通过应用很大的工作负载来使软件超负荷运转, 其目的是要弄清楚被测试的 Web 服务是不是不仅能做预期应能做的事,而且在被施加了某些高强度压力的情况下仍能继续正常运行。 如果压力测试通过对软件保持高强度的使用 (不超过性能统计数字确定的限制) 能够有效执行, 那么它就经常能够发现许多其它测试无法发现的隐蔽错误。( 2)有效的压力测试系统的关键条件重复:就是一遍又一遍地执行某个操作或功能。并发:就是在同一时间内执行多个操作。量级:尽量使单独的操作进行高强度的使用,增加操作的量级。随机变化:随机使用前面条件中的无数变化形式,就能够在每次测试运行时应用许多不同的代码路径。9、如何根据等价类的划分确定测试用例。( 1)首先为等价类表中的每一个等价类分别规定一个唯一的编号。( 2)设计一个新的测试用例,使它能够尽量覆盖尚未覆盖的有效等价类。重复这个步骤,直到所有的有效等价类均被测试用例所覆盖。( 3) 设计一个新的测试用例, 使它仅覆盖一个尚未覆盖的无效等价类。 重复这一步骤,直到所有的无效等价类均被测试用例所覆盖。10、简述软件自动化测试中的“捕获-回放”技术( 1)捕获:将用户每一步操作都记录下来。这种记录的方式有两种:程序用户界面的像素坐标或程序显示对象(窗口、按钮、滚动条等)的位置,以及相对应的操作、状态变化或是属性变化。 所有的记录转换为一种脚本语言所描述的过程, 以模拟用户的操作。( 2)回放:将脚本语言所描述的过程转换为屏幕上的操作,然后将被测系统的输出记录下来同预先给定的标准结果比较。 这可以大大减轻黑盒测试的工作量, 在迭代开发的过程中,能够很好地进行回归测试。四、分析题1、阅读下面的问题说明:现在的软件系统几乎都是用事件触发来控制程序流程的。 事件触发时的情景便形成了场景, 而同一事件不用的触发顺序和处理结果就形成了事件流。 事件流分为基本流和备选流, 基本流是经过测试用例的从开始到结束的最简单、 无差错的路径, 备选流可以从基本流开始, 也可以从另外的备选流开始, 在某个特定条件下执行。 根据问题的描述确定程序的基本流和备选流, 然后由基本流和备选流形成不同的场景, 对每一个场景生成相应的测试用例。这就是应用场景法进行测试用例设计的基本思想。下面是对某ATM机应用系统的存款操作的基本流和备选流的描述。 基本流A:序号业务名称业务描述1准备存款客户将银行卡插入ATM机2验证银行卡ATM机从读入的银行卡中读取账户代码,并检查它是否属于可接收 的银行卡3输入密码ATM机要求客户输入6位密码4验证帐号和密码ATM机通过验证客户的帐号和密码,决定客户的合法性5ATM机屏幕选项ATM机显示在本机上可用的屏幕选项6输入金额从ATM机显示屏幕中选取金额7授权ATM机将整体操作作为事务提交银行系统8人钞客户向ATM机提供现金,ATM机验钞9验钞确认ATM机屏幕中显示存款金额10返回银行卡银行卡被返还11打印收据提供客户打印收据功能备选流:序号业务名称业务描述B银行卡无效在基本流A2过程中,该卡不能够识别或是非本机可以使用的银行卡,ATM机退卡,并退出基本流C密码有误ATM机提示密码不正确,客户有三次机会重输,重新加入基本流 A3, 或选择退卡D验钞不符系统判断存款金额与人钞数目不符,重新加入基本流A8,或选择退卡试求:(1)设计场景(基本流用字母 A表示,备选流用题干中描述的相应字母表示)。场景格式示例如下:场景ID场景描述场景过程1密码有误A、B、C(2)设计测试用例场景矩阵测试用例矩阵格式示例如下:测试用例ID场景账号密码输入金额ATM机确认金 额预期结果11VVVn/a退卡V表示有效数据元素,I表示无效数据元素,n/a表示不可用(3)假设本系统开发人员在开发过程中通过测试发现了20个错误,独立的测试组通过上述测试用例发现了 80个软件错误,系统在上线后,用户反馈了 10个错误,请计算缺陷探 测率(DDP)。(1)设计场景场景ID场景描述场景流程1成功存款A2银行卡无效A、B3密码有误A、C4验钞不符A、D(2)设计测试用例场景矩阵测试用例ID场景账号密码输入金额ATM机确认金 额预期结果11VVVV成功存款22In/an/an/a退卡33VIn/an/a重输或退卡44VVVI重输或退卡(3)计算缺B1探测率(DDP)DDP=Bugstester (Bugstester+ Bugscustome。= (20+80) (20+80+10) =90% (0.9) 其中,Bugstester为测试者发现的错误数; Bugscustomer为客户发现并反馈技术支持人员进行修复的错误数。五、设计题1、NextDate函数问题说明:输入一个日期,求从输入日期算起的第三天日期。例如,输入为2008年8月8日,则该程序的输出为 2008年8月10日。NextDate函数包含三 个整数变量 month、day和year,并且满足下列条件: 1 & month W12和1w day & 31。(1)分析各种输入情况,列出为输入变量month、day、year划分的有效等价类等价类划分格式示例如下:输入ID有效等价类day11 Wdayw 31(2)根据划分的等价类,再考虑 month边界值,设计健壮等价类测试用例。测试用例格式示例如下:用例IDdaymonthyear预期输出覆盖等价类1552008200805052(1)输入等价类输入ID有效等价类day11 Wdayw 262day=273day=284day=295day=306day=31month7month=4 , 6, 9, 118month=1 , 3, 5, 7, 8, 109month=210month=12year11闰年12非闰年(2)设计测试用例用例IDdaymonthyear预期输出覆盖等价类1512008200801071, 8, 1122752008200805292, 8, 1132852008200805303, 8, 114295200920090531p, 8, 1253052009200906015, 8, 1263152009200906026, 8, 1275-12008无效月份8522008200802071, 9, 1195112008200811071, 7, 11105122008200812071, 10, 11115132008无效月份2、三角形问题说明:输入三个正整数a、b、c,分别作为三角形的三条边,现通过程序判断由三条边构成的三角形的类型是否为等边三角形、等腰三角形、直角三角形、普通三角 形以及非三角形。假设要求输入的a、b、c数据满足的条件是:a0 A b0 A c0 并且 ab+c , ba+c , ca+b根据问题的规格说明,可从输出域划分5种等价类:R1:等边三角形R2:等腰三角形R3:直角三角形R4:普通三角形R5:非三角形可由输出等价类求输入等价类:例如输出的等边三角形等价类R1对应的输入等价类 S1表示为R1:S1 = | a=b A b=c A a=cA a0A b0 A c0(1)按上述表示,将输出等价类变换为对应的输入等价类。(2)假设1wa, b, c10,根据划分的等价类,设计健壮等价类测试用例,再使用必 要的边界值用例补充。测试用例格式示例如下:用例IDabc预期输出覆盖等价类1555等边三角形S1, S2(1)输入等价类R1: S1 = | a=b Ab=cA a=cA a0A b0 A c0R2: S2 = |(a=b Vb=c V a=c) A (a+bc A b+ca A a+cb) A a0 A b0 A c0R3: S3 = | a0A b0 A c0 A (a+bc A b+ca A a+cb) A (a2+b2=c2V b2+c2=a2 Va2+c2=b2)R4: S4 = |a w bAbw cA aw cA a0 A b0 A c0 A (a+bc A b+ca A a+cb)R5: S5 = |(a+b cV b+caV a+c0A b0Ac0Vci 0V b 0V c 0 )5 6 if ( i=0 )7 x=y+2;8 else9 if ( i=1 )10 y=y+10;11 else12 x=y+20;13 / while14 / Test1试求:(1)画出程序的流程图及控制流图(可用语句标号表示),计算程序的环形复杂度。(2)确定程序的独立路径,并根据独立路径,设计测试用例。测试用例格式示例如下:用例IDni预期输出x,y覆盖路径1512,51-2-3(1) 画出程序的流程图及控制流图。计算程序的环形复杂度。V(G尸E-N+2=9-7+2=4或 V(G尸P+1=3+1=4(2)确定程序的独立路径。路彳仝1: 4 14路彳至 2: 4 6f 7- 14路彳3l 3: 4 6一 9一 10一 4一 14路彳H 4: 4一 6一 9一 12一 4一 14根据独立路径,设计测试用例。用例IDni预期输出x,y覆盖路径1000,04-142100,24-6-7-143110,104-6-9-10-4-1441220,04-6-9-12-4-145、假设某保险公司的人寿保险的保费计算方式为:投保额x保险费率。其中,保险费率依点数不同而有别,具体规则见下表。年龄性别婚姻点数与保险费率20-3940-59其它男M女F已婚T未婚F 10 点 A10 点 B6点4点2点5点3点3点5点0.6%0.1%根据问题的规格说明,从输入条件划分等价类。输入等价类输入ID有效等价类ID无效等价类年龄120-39 岁8年龄小于1240-59 岁3其它年龄性别4男性9除“M” “F”字符外5女性婚姻6已婚10除“丁”、F”字符外7未婚(1)对每一个有效等价类,至少设计一个测试用例。(2)对每一个无效的输入,设计一个无效等价类,并设计测试用例。五、单选题1、对于下列描述(1)软件未达到产品说明书中已经标明的功能;(2)软件出现了产品说明书中指明不会出现的错误;(3)软件未达到产品说明书中虽未指出但应当达到的目标;(4)软件功能超出了产品说明书中指明的范围。正确的说法是A. (1) (2) 属于软件缺陷B.只有(4)属于软件缺陷C (1)(2) (3) (4)都属于软件缺陷D.只有(1) (2)属于软件缺陷2、测试步骤详细规定了如何设置、执行、评估特定的A.测试计划B.测试报告C测试用例D.测试程序3、经过测试,符合设计要求,确认系统功能和其他特性均不再做任何改变。这表示的是测试过程中的A.程序冻结B.需求冻结C功能冻结D.代码冻结4、测试用例是为特定的目的而设计的一组测试输入、执行条件和预期的结果;测试用例是执行测试的A.最小集合B.最大集合C.最小实体D.最大实体5、尽早地和及时地测试。这句话描述的是A.软件测试目的B.软件测试原则C.软件测试停止白依据D.软件测试基本问题6、对于下列内容:(1)需求分析说明书(2)概要设计说明书(3)详细设计说明书(4)源 程序代码。关于单元测试的描述,正确的说法是A.与(1) (2) (3)有关 B.只与(4)有关C.只与(3) (4)有关D.与(1) (2) (3) (4)都有关7、按照区间进行等价类划分,在输入条件规定了取值范围或值的个数的情况下,可以确定有效等价类和无效等价类的个数分别为A. 2, 2B.1, 1精选C. 1, 2D. 2 , 18、在三角形问题中,有四种可能的输出:等边三角形、等腰三角形、一般三角形和非三角形。则标准等价类和健壮等价类的测试用例个数分别为A. 4, 1C. 1, 49、在软件测试工具中,下面不属于动态测试工具类型的是B. 5, 7D. 4, 7卜面不属于动态测试工具类型的是A. 错误检查B. 内存分析C. 覆盖测试D. 接口测试10、大量的事实表明,导致软件缺陷的最大原因是A. 软件产品说明书B. 软件设计手册C. 软件用户操作手册D. 软件维护手册11. 在软件测试工具中,下面属于静态测试工具类型的是A. 一致性检查B. 内存分析C. 覆盖测试D. 接口测试12、 为检验所开发的软件是否能按用户提出的要求进行, 采用黑盒测试来完成的一系列证明软件功能和要求一致的测试称为A. 集成测试B. 确认测试C. 系统测试D. 回归测试13、针对软件的可维护性,目前业界主要存在三种度量参数:和McCabe复杂度。其中 Line复杂度表示Line 复杂度、 Halstead 复杂度A. 以代码的行数作为计算的基准B. 以程序中使用到的运算符与运算元数量作为计数目标C. 以软件的流程图来衡量软件的质量D. 以软件的功能结构图来评价软件的可维护性14、 从宏观上说, C/S 体系结构的软件测试通常是从单个客户端开始,然后再逐步集成客户端、 服务器和网络系统进行集成测试, 最后进行系统的整体测试。 下面不属于整体测试的主要内容是A. 事务测试B. 网络通信测试C. 网络运行性能的测试D. 对应用服务器(中间件)的测试15、假设存在父类Base有Inherited。和Redefined。这两个成员函数,继承父类Base的子类Derived 只对 Redefined() 做了改动。那么,确切的说法是A. Derived:Redefined()需要重新测试B. Derived:Redefined(M 必重新测试C. Derived:Inherited()不必重新测试D. Derived:Inherited() 需要重新测试16、 用等价类划分法设计对所有实数进行开平方运算的程序的测试用例,划分为可以将输入域进行17、A. 正整数、 0 和 负整数C. 有理数和无理数假设一个软件的数据输入要求是无效等价类的边界值分别为A. 1000, 9999; 1000, 10000C. 1000, 9999; 999, 10000B. 正实数、 0 和 负实数D. 实数和虚数4 位整数,则利用边界值分析法,输入的有效等价类和B. 999, 9999; 999, 10000D. 999 , 9999; 1000, 10000018、在软件测试工具中,下面属于动态测试工具类型的是A. 性能测试B. 类型检查C. 复杂度分析D. 接口分析19、在软件测试的充分性准则中表明,软件越复杂,需要的测试数据就越多。这一特性称为A. 单调性B. 非复合性C. 复杂性D. 非分解性20、 在集成测试策略的环境中, 对某些已经进行过的测试的某些子集再重新进行一遍, 以保证上述改变不会传播无法预料的副作用或引发新的问题,这一测试称为A. 集成测试B. 确认测试C. 系统测试D . 回归测试21、 如果将简单循环的测试方法用于嵌套循环, 可能的测试次数会随嵌套层数成几何级数增加。 此时可采用减少测试次数的正确方法之一是A. 测试从最内层循环开始,所有外层循环次数设置为最小值B. 测试从最外层循环开始,所有内层循环次数设置为最小值C. 测试从最内层循环开始,所有外层循环次数设置为最大值D. 测试从最外层循环开始,所有内层循环次数设置为最大值22、 Rational Robot 是一种强大的自动化测试工具,主要通过编写脚本的方式提供自动化测试特性。其中图形用户界面( GUI )脚本主要用于A. 用户测试B. 单元测试C. 性能测试D. 功能测试23、一个好的测试用例在于发现了还未曾发现过的错误。这句话描述的是A. 软件测试目的B. 软件测试原则C. 软件测试停止的依据D. 软件测试基本问题24、 Rational Robot 是一种强大的自动化测试工具,主要通过编写脚本的方式提供自动化测试特性。下面不属于目前Rational Robot 开发的三种测试脚本之一的是A. 图形用户界面( GUI )脚本B. 虚拟用户( VU )脚本C. VBScript 脚本D. JavaScript脚本25、 对于下面的逻辑覆盖法的有关描述: 选择足够多的测试用例, 使得程序中的每个可执行语句至少执行一次。该逻辑覆盖属于A. 语句覆盖B. 判定覆盖C. 条件覆盖D. 组合覆盖26、下面是有关基本路径测试方法的描述:( 1)计算程序的环形复杂度,导出程序基本路径集中的独立路径条数。( 2)导出基本路径集,确定程序的独立路径。( 3)画出程序的控制流图。( 4)根据图中的独立路径,设计测试用例的输入数据和预期输出。正确的执行基本路径测试方法的步骤是A. ( 1) (2) ( 3) ( 4)B.( 3) ( 1) (2) (4)D. ( 3) ( 4) (2) ( 1 )D. ( 4) ( 3) ( 2) ( 1)六、题型举例一、 单项选择题(本大题共15小题,每小题 1 分,共 15分)1、大量的数据表明,导致软件缺陷的产生原因分布中,软件产品说明书约占A. 7%B. 10%C. 27%D. 56%2、关于软件测试对象的描述,下面不正确的是A. 软件测试不等于程序测试B. 软件测试就是源程序的测试C. 软件测试贯串于软件定义和开发的整个过程D. 软件开发过程中所产生的需求规格说明、概要设计规格说明、详细设计规格说明以及源程序都是软件测试的对象。3、 Rational Robot 是一种强大的自动化测试工具,主要通过编写脚本的方式提供自动化测试特性。其中虚拟用户( VU )脚本主要用于A. 用户测试B.单元测试C. 性能测试D.功能测试4、在软件测试工具中,下面属于动态测试工具类型的是D. 一致性检查B.内存分析E. 数据流分析D.接口分析5、在不能做到所有路径覆盖的前提下,如果某一程序的每一个独立路径都被测试过,那么可以认为程序中的每个语句都已经检验过了, 这种测试方法就是通常所说的基本路径测试方法。这种方法的结果达到了F. 语句覆盖B. 条件覆盖G. 路径覆盖D. 组合覆盖6、在软件测试的充分性准则中表明,即使对软件系统整体的测试是充分的,也并不意味软件系统中各个成分都已经充分地得到了测试。这个特性称为H. 单调性B. 非复合性I. 复杂性D. 非分解性7、针对软件的可维护性,目前业界主要存在三种度量参数:Line 复杂度、 Halstead 复杂度和McCabe复杂度。其中McCabe复杂度表示A. 以代码的行数作为计算的基准B. 以程序中使用到的运算符与运算元数量作为计数目标C. 以软件的流程图来衡量软件的质量D. 以软件的功能结构图来评价软件的可维护性8、按照数值划分等价类,在规定了一组n 个输入数据,并且程序要对每一个输入值分别进行处理的情况下,可确定有效等价类和无效等价类的个数分别为A. n , 1 B. 1, nC. n+1 , n D. 1 , n+1二、填空题(本大题共15小题,每小题 1 分,共 15分)1、测试大纲是软件测试的依据,包括(测试项目)、测试步骤、测试完成的标准。2、白盒测试工具一般是针对被测(源程序)进行的测试,3、 Web 网站的网页测试主要包括文字测试、 (链接)测试、图形、图像测试、表单测试等。4、有效的 Web 压力测试系统的关键条件中,重复指的是(多次)地执行某个操作或功能。5、在软件测试中,检验软件产品质量的最后一道工序主要是突出用户的作用,同时软件开发人员也应有一定程度的参与,这一测试称为(验收)测试。6、基于状态的上下文覆盖把一个状态上下文内的一个例行程序的执行认为是(独立于)另一个状态内相同例行程序的执行。( 、 动态测试工具需要实际运行被测系统, 并设置断点, 掌握断点这一时刻程序运行 (数据) 。8、语句覆盖属于(白盒)测试技术。三、简答题(本大题共6 小题,每小题 5 分,共 30 分)1、对于软件缺陷的定义,通常有下列描述:( 1 )软件未达到产品说明书中已经标明的功能;( 2 )软件出现了产品说明书中指明不会出现的错误;( 3 )软件未达到产品说明书中虽未指出但应当达到的目标;( 4 )软件功能超出了产品说明书中指明的范围;( 5 ) 软件测试人员认为软件难以理解、 不易使用, 或者最终用户认为该软件使用效果不良。以日常使用的具有四则运算功能的计算器内的嵌入式软件为例, 举例说明软件测试中出现上述五条中的至少三种现象。( 1)随意选定两个数值,按下加、减、乘、除功能健之一,无反应或结果出错,属于第一种现象。( 2)如果产品说明书指出,系统不会出现崩溃或死锁等反应,但随意选定按键后,无反应,属于第二种现象。( 3)系统除具有加、减、乘、除功能外,还能计算平方根,但说明书并为指出该功能,属于第三种现象。( 4)测试中,因电池没电导致计算错误,但说明书并为指出该现象如何处理,属于第四种现象。( 5)按键太小或正常情况下显示字体不清,属于第五种现象。2、简述单元测试中模块接口测试的内容( 1)调用所测模块时的输入参数与模块的形式参数在个数、属性、顺序上是否匹配;( 2)所测模块调用子模块时,它输入给子模块的参数与子模块中的形式参数在个数、属性、顺序上是否匹配;( 3)是否修改了只做输入用的形式参数; )( 4)调用标准函数的参数在个数、属性、顺序上是否正确;( 5)全局变量的定义在各模块中是否一致。3、简述软件测试停止的五类依据(标准)( 1)测试超过了预定时间。( 2)执行了所有的测试用例,但并没有发现故障。( 3)使用特定的测试用例设计方案作为判断测试停止的基础。( 4)停止测试的标准可定义为查出某一预订数目的故障。( 5)根据单位时间内查出故障的数量决定是否停止测试。4、简述黑盒测试可以发现哪几类错误( 1)是否有不正确或遗漏了的功能( 2)在接口上,输入能否正确地接受或能否输出正确的结果( 3)是否有数据结构错误或外部信息访问错误( 4)性能上是否能够满足要求四、设计题(每题 10 分,共 30分)1、 NextDate 函数问题说明:输入一个日期,求从输入日期算起的第三天日期。例如,输入为 2008 年 8 月 8 日,则该程序的输出为 2008 年 8 月 10 日。 NextDate 函数包含三个整数变量 month、day和year,并且满足下列条件:1w month W12和1w day W31。(1)根据问题的规格说明,将输入变量month、day、year划分的有效等价类作为原因,列出原因和结果(假设不考虑闰年)。因果表格式示例如下:ID原因(输入)ID结果(输出)a=b=cA等边三角形(2)根据因果表,分析因果关系,画出简化的决策表,并设计测试用例。决策表格式示例如下:规则123n条件 (原因)Y 动作 A(结果)V 测试用例(a,b,c)3,3,3(1)列出原因和结果ID原因(输入)ID结果(输出)month=4 , 6, 9, 11Aday+2month=1 , 3, 5, 7, 8, 10Bday=2month=2Cday=1month=12Dmonth+11 wdayw 26Emonth=1day=27Fyear+1day=28day=30day=31year(2)画出简化的决策表,并根据决策表,设计测试用例。规则1234567891011条件YYY(原因)YYYYYYYYYYYYYYYYYYYYYYYY-动作 A(结果)BCDEF不可能VVVVVVVVVVVVVVVVVVVV测试用例6,6,9,3,5,2,2,2,2,12,12,(mouth,day,16,30,31,16,31,16,27,28,30,30,31,year)20082008200820082008200820082008200820082008五、阅读分析题(本大题10分)阅读下面的问题说明:现在的软件系统几乎都是用事件触发来控制程序流程的。事件触发时的情景便形成了场景,而同一事件不用的触发顺序和处理结果就形成了事件流。事件流分为基本流和备选流,基本流是经过测试用例的从开始到结束的最简单、无差错的路径,备选流可以从基本流开始,也可以从另外的备选流开始,在某个特定条件下执行。根据问题的描述确定程序的基本流和备选流,然后由基本流和备选流形成不同的场景,对每一个场景生成相应的测试用例。这就是应用场景法进行测试用例设计的基本思想。下面是对某ATM机应用系统的取款操作的基本流和备选流的描述。业务描述基本流A:序号业务名称业务描述1准备提款客户将银行卡插入ATM机2验证银行卡ATM机从读入的银行卡中读取账户代码,并检查它是否属于可接收 的银行卡3输入密码ATM机要求客户输入6位密码4验证帐号和密码ATM机通过验证客户的帐号和密码,决定客户的合法性5ATM机屏幕选 项ATM机显示在本机上可用的屏幕选项6输入金额从ATM机显示屏幕中选取金额7授权ATM机将整体操作作为事务提交银行系统8出钞ATM机向客户提供现金9返回银行卡银行卡被返还10打印收据提供客户打印收据功能备选流:序号 业务名称B银行卡无效在基本流A2过程中,该卡不能够识别或是非本机可以使用的银行卡,ATM机退卡,并退出基本流CATM机内无现金系统判断ATM机内现金不足,重新加入基本流 A4,或选择退卡DATM机内现金 不足系统判断ATM机内现金不足,重新加入基本流 A4,或选择退卡E密码有误ATM机提示密码不正确,客户有三次机会重输,重新加入基本流 A3, 或选择退卡F账面余额不足ATM机提示客户账面余额不足,重新加入基本流A6,或选择退卡试求:(1)设计场景(基本流用字母 A表示,备选流用题干中描述的相应字母表示)。场景格式示例如下:场景ID场景描述场景过程1密码有误A、B、C(2)设计测试用例场景矩阵测试用例矩阵格式示例如下:测试用例ID场景账号密码输入金额账面金额ATM机内金额预期结果11VVVVn/a退卡V表示有效数据元素,I表示无效数据元素,n/a表示不可用(3)假设本系统开发人员在开发过程中通过测试发现了20个错误,独立的测试组通过上述测试用例发现了 100个软件错误,系统在上线后,用户反馈了 30个错误,请计算缺陷 探测率(DDP)。参考答案:(1)设计场景场景ID场景描述场景流程1成功取款A2银行卡无效A、B3ATM机内无现金A、C4ATM机内现金不足A、D5密码有误A、E6账面余额不足A、F(1)设计测试用例场景矩阵测试用例ID场景账号密码输入金额账面金额ATM机内金额预期结果11VVVVV成功取款22In/an/an/an/a退卡33VVVVn/a退卡44VVVVI重输或退卡55VIn/an/an/a重输或退卡66VVVIV重输或退卡(3)计算缺B1探测率(DDP)DDP=Bugstester (Bugstester+ Bugscustome。= (20+100) (20+100+30) =80% (0.8)其中,Bugstester为测试者发现的错误数;Bugscustomer为客户发现并反馈技术支持人员进行修复的错误数。
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 中学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!