一、选择题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)1~2倍 (B)10~20倍(C)50倍 (D)100倍或更高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、白盒测试是根据程序的_________来设计测试用例,黑盒测试是根据软件的规格说明来设计测试用例。
()(A)功能 (B)性能(C)内部逻辑 (D)内部数据16、条件覆盖的目的是________。
()(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、软件测试的目的: ________。
()A. 避免软件开发中出现的错误B. 发现软件开发中出现的错误C. 尽可能早地发现并排除软件中潜藏的错误,提高软件的可靠性D. 修改软件中出现的错误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、软件缺陷修复的代价最高的阶段为________。
()A、发布阶段B、需求阶段C、设计阶段D、编码阶段28、不属于白盒测试的技术是_______。
()A. 语句覆盖B. 判定覆盖C. 边界值分析D. 基本路径测试29、不属于逻辑覆盖方法的是()A.组合覆盖 B.判定覆盖C.条件覆盖 D.接口覆盖30、在用白盒测试中的逻辑覆盖法设计测试用例时,有语句覆盖、分支覆盖、条件覆盖、判定-条件覆盖、条件组合覆盖和路径覆盖等,在下列覆盖中,其中________是最弱的覆盖准则。
()A. 语句覆盖B. 条件覆盖C. 判定-条件覆盖D. 路径覆盖31、下列_______方法设计出的测试用例发现程序错误的能力最强。
()A.等价类划分法 B.场景法C.边界值分析法 D.决策表法32、如果F 实现一个程序,输入变量x1和x2的边界、区间分别为:a ≤x1≤d ,区间为[a,b],[b,c],[c,d];e ≤x2≤g ,区间为[e,f],[f,g];则下列( D )图可表示为强健壮等价类测试用例。
A .B .C D .33、____方法是根据输出对输入的依赖关系来设计测试用例的。
( )A .边界值分析B .等价类C .因果图法D .错误推测法34、对于一个含有n 个变量的程序,采用基本边界值分析法测试程序会产生____个测试用例。
( )A.6n+1 (健壮性测试)B.5nC.4n+1D.7n35、下列___不是软件自动化测试的优点。
( )A.速度快、效率高B.准确度和精确度高C.能提高测试的质量D.能充分测试软件 二、判断题1、最重要的用户界面要素是软件符合现行标准和规范。
( √ )2、自动化测试可能延误项目进度。
( √ )3、软件测试员可以对产品说明书进行白盒测试。
(√ )a b cd gf e x 2 x 1a b cdg f e x 2 a b cd g f ex 1x1 x2 a b c dg f ex 1x 24、静态白盒测试可以找出遗漏之处和问题。
(√)5、软件测试等于程序测试。
(×)6、软件测试是有风险的行为,并非所有的软件缺陷都能够被修复。
(√)7、好的测试员坚持不懈地追求完美。
(×)8、软件质量保证和软件测试是同一层次的概念。
(×)9、我们有理由相信只要能够设计出尽可能好的测试方案,经过严格测试之后的软件可以没有缺陷。
(×)10、软件生命周期是软件从产生到报废的过程。
(√)11、白盒测试的条件覆盖标准强于判定覆盖。
(×)12、验收测试是以最终用户为主的测试。
(√)13、测试程序仅仅按预期方式运行就行了。
(×)14、自底向上集成需要测试员编写驱动程序。
(√)15、好的测试员不懈追求完美。
(×)16、软件测试工具可以代替软件测试员。
(×)17、在所有的黑盒测试方法中,基于决策表的测试是最为严格、最具有逻辑性的测试方法。
(√)18、测试用例的数目越多,测试的效果越好。
(×)19、只要能够达到100%的逻辑覆盖率,就可以保证程序的正确性。
(×)20、没有发现错误的测试是没有价值的。
(√)21、软件测试工具可以代替软件测试员。
(×)22、单元测试能发现约80%的软件缺陷。
(√)23、尽早发现软件缺陷,降低修复成本。
(√)24、尚未发现或未观察到的软件缺陷只能说是潜在缺陷。
(√)25、测试用例是软件测试的核心。
(√)三、简答题1、功能测试的定义,并指出几种主要的测试用例设计方法。
答:功能测试是指依据产品设计规格说明完成对产品功能进行操作,以验证系统是否满足用户的功能性需求。
测试用例设计的主要方法有:等价类划分方法、边界值分析方法、错误推测方法、因果图方法、判定表驱动分析方法、功能图分析方法2、什么叫做集成测试?集成测试策略中增值式测试和非增值式测试是什么?答:集成测试又称组装测试、联合测试、子系统测试或部件测试。
集成测试是在单元测试的基础上,将所有模块按照设计要求(如根据结构图)组装成子系统或系统进行的测试活动。
增值式策略:这种集成方式又称渐增式组装。
首先对一个个模块进行模块测试,然后将这些模块逐步组装成较大的系统,在组装的过程中边连接边测试,以发现连接过程中产生的问题。
通过增值逐步组装成为要求的软件系统。
非增值式策略:先分别测试每个模块,再把所有模块按设计要求放在一起结合成所要的程序。
4、黑盒测试和白盒测试是软件测试的两种基本方法,请分别说明各自的优点和缺点。
答;黑盒测试也称功能测试或数据驱动测试,它是在已知产品所具有的功能,通过测试来检测每个功能是否能正常使用。
黑盒测试的优点有:(1)比较简单,不需要了解程序内部的代码及实现;(2)与软件的内部实现无关;(3)从用户角度出发,能很容易的知道用户会用到哪些功能,会遇到哪些问题;(4)基于软件开发文档,所以也能知道软件实现了文档中的哪些功能;(5)在做软件自动化测试时较为方便。
黑盒测试的缺点有:(1)不可能覆盖所有的代码,覆盖率较低,大概只能达到总代码量的30%;(2)自动化测试的复用性较低。
白盒测试又称结构测试或逻辑驱动测试,它是根据程序内部的结构设计测试数据,检查程序中的每条通路是否都能够按预定要求正确运行。
白盒测试的优点有:帮助软件测试人员增大代码的覆盖率,提高代码的质量,发现代码中隐藏的问题。
白盒测试的缺点有:(1)程序运行会有很多不同的路径,不可能测试所有的运行路径;(2)测试基于代码,只能测试开发人员做的对不对,而不能知道设计的正确与否,可能会漏掉一些功能需求;(3)系统庞大时,测试开销会非常大。
四、综合题1.如图显示某程序的逻辑结构。
试为它设计足够的测试用例,分别实现对程序的判定覆盖、条件覆盖和条件组合覆盖。
(将相应空缺部分填写完整。
)覆盖种类需满足的条件测试数据期望结果判定覆盖A>1,B=0 A=2,B=0执行S1 A>1, B≠0或A≤1, B=0或A≤1, B≠0A=2, B=1或A=1, B=0或A=1, B=1执行S2条件覆盖以下四种情况各出现一次无A>1 B=0 A=2,B=0 执行S1A≤1 B≠0A=1,B=1执行S2条件组合覆盖A>1, B=0 A=2,B=0执行S1 A>1, B≠0A=2,B=1执行S2 A≤1, B=0 A=1,B=0执行S2 A≤1, B≠0 A=1,B=1执行S22、某软件规格说明书包含这样的要求:第一列字符必须是A或B,第二列字符必须是一个数字,在此情况下进行文件的修改,但如果第一列字符不正确,则给出信息L;如果第二列字符不是数字,则给出信息M。