软件质量保证与测试复习题类型:一、单项选择题(共20小题,20%)二、判断题(共20小题,20%)三、简答题(共5小题,30%)四、综合题(共2题,30%)复习题:一、单项选择题1、软件测试的目的()A. 避免软件开发中出现的错误B. 发现软件开发中出现的错误C.尽可能发现并排除软件中潜藏的错误,提高软件的可靠性D. 修改软件中出现的错误2、软件测试是采用()执行软件的活动A.测试用例B.输入数据C.测试环境D.输入条件3、导致软件缺陷的最大原因是()A.软件需求说明书B.设计方案C.编码D.维护4、在下列描述中,关于一个软件缺陷状态完整变化的错误描述是()A.打开——修复——关闭B.打开——关闭C.打开——保留D.激活——修复——重新打开5、在下列描述中,关于测试与调试的说法错误的是()A.测试是显示错误的行为;而调试是推理的过程B.测试显示开发人员的错误。
调试是开发人员为自己辩护C.测试能预期和可控。
调试需要想象、经验和思考D.测试必须在详细设计已经完成的情况下才能开始;没有详细设计的信息调试不可能进行6、某次程序调试没有出现预计的结果,下列()不可能是导致出错的原因A.变量没有初始化B.编写的语句书写格式不规范C.循环控制出错D.代码输入有误7、软件缺陷修复的代价最高的阶段为()A.发布阶段B.需求阶段C.设计阶段D.编码阶段8、不属于逻辑覆盖方法的是()A.组合覆盖B.判定覆盖C.条件覆盖D.接口覆盖9、()是选择若干个测试用例,运行被测程序,使得程序中的每个可执行语句至少执行一次A.条件覆盖B.组合覆盖C.判定覆盖D.语句覆盖10、()是设计足够多的测试用例,使得程序中每个判定包含的每个条件的所有情况(真/假)至少出现一次,并且每个判定本身的判定结果(真/假)也至少出现一次A.判定-条件覆盖B..组合覆盖C.判定覆盖D.条件覆盖11、软件缺陷修复的代价最高的阶段为()A.发布阶段B.需求阶段C.设计阶段D.编码阶段12、下列()是关于软件缺陷的描述。
A.导致软件包含故障的人的行为B.产品的异常情况C.引起一个功能部件不能完成所要求的功能的一种意外情况D.功能部件执行其规定功能的能力丧失13、软件测试是软件质量保证的重要手段,下述哪种测试是软件测试的最基础环节?()A.功能测试B.单元测试C.结构测试D.验收测试14、单元测试的主要任务不包括()A.出错处理B.全局数据结构C.独立路径D.模块接口15、如下图所示的N-S图,至少需要()个测试用例完成逻辑覆盖。
(逻辑覆盖是通过对程序逻辑结构的遍历实现程序的覆盖)A.12 B.48 C.27 D.1816、单元测试中用来模拟实现被测模块需调用的其他功能模块的是()A.驱动模块B.桩模块C.主控模块D.真实的被调用模块17、集成测试计划应该在()阶段末提交A.需求分析B.概要设计C.详细设计D.单元测试完成18、下列关于程序效率的描述错误的是()A.提高程序的执行速度可以提高程序的效率B.降低程序占用的存储空间可以提高程序的效率C.源程序的效率与详细设计阶段确定的算法的效率无关D.好的程序设计可以提高效率19、自底向上增量式集成测试中,下面()描述是正确的A.测试由桩模块控制B.最上面的模块最先测试C.父单元用测试过的子单元测试D.包含树的深度优先或广度优先遍历过程20、测试后程序中残存的错误数目与该程序中已发现的错误数目成()A.未知B.反比C.相等D.正比21、针对是否对无效数据进行测试,可以将等价类测试分为()1)标准(一般)等价类测试2)健壮等价类测试3)弱等价类测试4)强等价类测试A.3)4)B.1)2)C.1)3)D.2)4)22、可作为测试停止的标准是()A.当时间用光时B.执行了所有的测试用例,但没有发现故障C.当所有缺陷都已经清除时D.当达到所要求的覆盖时23、下列描述错误的是()A.软件发布后如果发现质量问题,那是软件测试人员的错B.穷尽测试实际上在一般情况下是不可行的C.软件测试自动化不是万能的D.测试能由非开发人员进行,调试必须由开发人员进行。
24、下列()方法设计出的测试用例发现程序错误的能力最强。
A.等价类划分法B.场景法C.边界值分析法D.决策表法25、在软件修改之后,再次运行以前为发现错误而执行程序曾用过的测试用例,这种测试称之为()A.单元测试B.集成测试C.回归测试D.验收测试26、()方法是根据输出对输入的依赖关系来设计测试用例的。
A.边界值分析B.等价类C.因果图法D.错误推测法27、对于一个含有n个变量的程序,采用基本边界值分析法测试程序会产生()个测试用例。
A.6n+1 B.5nC.4n+1 D.7n28、以下关于测试用例特征的描述错误的是( )A.最有可能抓住错误的;B.一定会有重复的、多余的;C.一组相似测试用例中最有效的;D.既不是太简单,也不是太复杂。
29、()是一种关注变量定义赋值点(语句)和引用或使用这些值的点(语句)的结构性测试,主要用作路径测试的真实性检查。
A.基本路径测试B.逻辑覆盖C.决策表D.数据流测试30、如果F实现一个程序,输入变量x1和x2的边界、区间分别为:a≤x1≤d,区间为[a,b],[b,c],[c,d];e≤x2≤g,区间为[e,f],[f,g];则下列()图可表示为强健壮等价类测试用例。
1T )2。
F )3、错误推测法是根据输出对输入的依赖关系来设计测试用例的。
( F )4、软件缺陷属性包括缺陷标识、缺陷类型、缺陷严重程度、缺陷产生可能性、缺陷优先级、缺陷状态、缺陷起源、缺陷来源、缺陷原因。
(T )5、对于一个含有n个变量的程序,采用边界值健壮性测试方法来测试程序会产生6n+1个测试用例。
(T )6、数据流测试是主要用作路径测试的真实性检查。
两种形式分别为定义/使用测试、基于程序片的测试。
(T )7、软件只要经过严格严谨的内部测试之后,可以做到没有缺陷。
(F )8、测试用例应由测试输入数据和对应的实际输出结果这两部分组成。
( F )9、测试是可以穷尽的。
(F10、测试用例时,应当包括合理的输入条件和不合理的输入条件。
( T )11、试是在开发的后期才介入,现在测试活动已经扩展到了整个生命周期。
(T )12、试以发现错误为目的,现在测试已经扩展到了错误预防的范畴。
(T )fexfexfexfex13、试的生命周期包括测试计划、测试设计、测试执行、缺陷跟踪、测试评估。
( T )14、调试从一个已知的条件开始,使用预先定义的过程,有预知的结果;测试从一个未知的条件开始,结束的过程不可预计。
( F )测试以已知条件开始,使用预先定义的程序,且有预知的结果,不可预见的仅是程序是否通过测试;调试一般是以不可知的内部条件开始,除统计性调试外,结果是不可预见的。
?15、盒测试往往会造成测试用例之间可能存在严重的冗余和未测试的功能漏洞。
( F )16、测试自动化是万能的。
( F )17、件缺陷可能会被修复,可能会被保留或者标识出来。
(T )18、每一个软件项目都有一个最优的测试量。
(T )19、黑盒测试往往会造成测试用例之间可能存在严重的冗余和未测试的功能漏洞。
(T )20、代码审查工作属于静态测试。
(T )21、软件测试是一个过程,包含若干活动,运行软件进行测试只是活动之一。
(T )22、回归测试是在软件修改后再次运行以前为查找错误而执行程序曾用过的测试用例。
(T )18、测试按照测试层次可以划分成为单元测试、集成测试和系统测试。
(T )19、只要能够达到100%的逻辑覆盖率,就可以保证程序的正确性。
( F )20、只要能够达到100%的逻辑覆盖率,就可以保证程序的正确性。
( F )21、单元测试属于动态测试。
(T )22、验收测试是以最终用户为主的测试。
(T )23、没有发现错误的测试是没有价值的。
(T )24、可以把不合格的开发人员安排做测试。
( F )25、永远有缺陷类型会在测试的一个层次上被发现,并且能够在另一个层次上逃避检测。
(T )三、简答题1、测试用例设计的考虑因素有哪些?2、在测试过程中使用测试用例有什么作用?3、缺陷描述的的基本规则是什么?4、优秀的软件测试工程师应具备哪些素质?答:具有探索精神、具有良好的计算机编程基础、故障排除能手、坚持不懈的精神、具有创新精神和超前意识、追求完美、判断准确、具有整体观念,对细节敏感、团队合作精神,沟通能力5、黑盒测试与白盒测试各有哪些优缺点,应该如何结合才能解决漏洞和冗余问题?功能性测试具有两大优点:功能性测试与软件如何实现无关;测试用例开发可以与实现并行进行,因此可以压缩总的项目开发时间。
缺点:测试用例之间可能存在严重的冗余,还会有位测试的软件漏洞。
结构性测试局限于已经完成的代码行为当中,离代码太近。
因此可以结构性测试指标去解决冗余和漏洞问题。
如果发现同一条程序路径被多个功能性测试用例遍历,就可以怀疑这种冗余不会发生新的缺陷,如果没有达到一定的DD—路径覆盖,则可知在功能性测试用力中存在漏洞。
因此路径测试可以提供作为功能性测试交叉检查的一组指标。
6、假设程序的输入变量有两个a,b它们的取值范围时10≤a≤50,60≤b≤80,根据单故障假设,写出边界值分析的健壮性测试用例。
(9 70)(10 70)(11 70)(49 70)(50 70)(51 70)(30 59)(30 60)(30 61)(30 79)(30 80)(30 81)(30 70)7、什么是白盒测试和黑盒测试,并给出黑盒测试常用的方法、白盒测试时已知内部结构和内部特性,测试者根据内部结构老设计测试用例进行测试。
黑盒测试不考虑程序内部结构和内部特性,测试者只知道程序输入和输出之间的关系和程序的功能的情况下,依靠能够反这一关系和程序功能需求规格说明书,来确定测试用例和推断测试结果的正确性。
黑盒测试方法有等价类划分法,边界值分析法,错误推测法,因果图法,功能图法。
8、试描述测试层次与传统开发V型瀑布模型的对应图。
9、请分别叙述自动化测试工具WinRunner、LoadRunner和QTP各自的特点。
10、为什么说软件测试是软件开发中不可缺少的重要一环,但不是软件质量保证的安全网?①软件测试是软件开发中不可缺少的重要一环,原因是:·?????? 测试的工作量约占整个项目开发工作量的40%左右,几乎一半。
如果是关系到人的生命安全的软件,测试的工作量还要成倍增加。
·?????? 软件测试代表了需求分析、设计、编码的最终复审。
②软件测试不是软件质量保证的安全网,因为软件测试只能发现错误,不能保证没有错误。
11、测试计划编写6要素?Why --- 为什么要进行这些测试What --- 测试那些方面,不同阶段的工作内容When --- 测试不同阶段的起止时间Where --- 相应文档,缺陷的存放位置,测试环境等Who --- 项目有关人员组成,安排那些测试人员进行测试How --- 如何去做,使用那些测试工具以及测试方法进行测试12、软件测试的过程是什么?软件测试是一个规则的过程,包括测试设计、测试执行以及测试结果比较等。