一、概念判断
1 发现错误多的模块,残留在模块中的错误也多。(√) 思想:某处发现了缺陷,则可能会隐藏更多的缺陷。 2 目前在进行集成测试时普遍采用非渐增式测试方法。(×) 非渐增式测试容易出现混乱,为每个错误定位和纠正非常困难,并且在改正一个错误的同时又可能引入新的错误,新旧错误混杂,更难断定出错的原因和位置。常采用渐增式测试方法。
3Alpha测试在一个或多个客户场所进行,Beta测试由用户在开发者的场所进行。
(×)
验收测试分为正式验收测试、Alpha测试、Beta测试,Alpha测试在开发者的场所进行,Beta测试在一个或多个客户场所进行。说反了
4 单元测试通常应该先进行“人工走查”,再以白盒法为主,辅以黑盒法进行动
态测试。(√)
在单元测试或集成测试中主要采用白盒测试方法,包括对代码的评审、静态分析和结合测试工具进行动态测试。
5 测试只要做到语句覆盖和分支覆盖,就可以发现程序中的所有错误. (×)
6 成功的测试是没有发现错误的测试(×)
一个成功的测试是发现至今尚未发现的错误的测试。毕竟测试的目的之一是尽可能多的发现软件中的错误/缺陷。
7 确认测试也称为验收测试,它的目的是验证软件的有效性。(√) 8 软件测试是通过运行程序来查看错误。(×) 静态测试是不运行程序来进行测试。 9 类的私有方法可以测试。(√)
10 源程序代码的逻辑简单明晰,易读易懂是好程序的一个重要标
准。(√)
11 边界测试中所选择的输入测试数据一定是有效数据。(×) 不仅要用有效数据测试软件,还要用无效数据测试软件的容错性、对错误数据的处理。
12 抽象类可以测试。(×)
13 如数据流具有明显的事务特点时(有一个明显的事务中心),以采用事务分析方
法为宜.(√)
14 结构化程序设计是一种设计程序的技术,它采用自顶向下逐步求精的设计方法
和单入口单出口的控制结构。(√)
15 在程序设计过程中,我们尽量采用自顶向下和逐步细化的原则,由粗到细,一
步步展开。(√)
16 程序流程图本质上不是逐步求精的好工具,它诱使程序员过早地考虑程序的控
制流程,而不去考虑程序的全局结构。(√) 17 良好的单元测试可以代替集成测试。(×)
18 在面向对象测试领域,对子类展开测试,既要测试子类的属性和方法,也要测
试从父类的属性和方法。但是对于子类当中的重载方法,仅仅需要测试子类中的方法。
(×)
对于类的测试不能限定在子类中定义的成员变量和成员方法,还要考虑父类对子类的影响
19 等价划分属于白盒测试技术而控制结构测试属于黑盒测试。(×)
20 静态分析工具可用于软件测试中直接分析源代码,辅助生成测试用例。(√)
21 动态测试工具并不适用于需要大量交互操作的回归测试场合
(√)
22 静态分析工具能分析测试用例对判定的覆盖程度(×) 23 静态分析工具通常把被测程序看作为字符流输入,经检查与分析后,产生出一
份分析报告。(√)
24 良好的单元测试可以代替集成测试。(×)
25 软件测试的目的是尽可能多的找出软件的缺陷。(√) 26 Beta测试是验收测试的一种。(√) 27 验收测试是由最终用户来实施的。(×) 28 项目立项前测试人员不需要提交任何工件。(√)
项目立项:大概类似于项目建议书审批,项目建议书是初步选择项目,其可以决定是否需要进行下一步工作,主要考察建议的必要性和可行性。需求分析完成后,测试人员才参与进来。
29单元测试能发现约80%的软件缺陷。(√) 大概也和80/20原则有关
30代码评审是检查源代码是否达到模块设计的要求。(×) 通过软件评审尽早地发现产品中的缺陷<通过软件评审可以更早地发现需求工程、软件设计等各个方面的问题,减少后期返工,降低质量成本>
31 自底向上集成需要测试员编写驱动程序。(√) 自顶向下需要桩程序,自底向上需要驱动程序
32 负载测试是验证要检验的系统的能力最高能达到什么程度。(×)
文老师:不一定非要到达极限,只要验证一下性能就好了 负载测试不就是压力测试吗?
33 测试人员要坚持原则,缺陷未修复完坚决不予通过。(×) 缺陷分两种: 1、完全影响软件的正常运行或者影响客户的正常体验。这种当然不能予以通过 2、不影响产品运行及客户正常体验且此软件急于使用。以公司利益为出发,应予以通过。但在时间不紧急的情况下应不予通过。一个好的测试人员应该有很好的情况分析能力,
并且要有担当。
34代码评审员一般由测试员担任。(×)
代码评审的工作,测试人员大多对代码熟悉度和理解度不够高,这一项工作更倾向于同组的其他开发人员担任,效果更佳
35 我们可以人为的使得软件不存在配置问题。(×) 36 集成测试计划在需求分析阶段末提交。(×)
参照W模型,在需求分析阶段制定集成测试计划是不可能,集成测试计划要在概要设计阶段末提交。
37 软件测试是有风险的行为,并非所有的软件缺陷都能够被修复。(√)
38 软件质量保证和软件测试是同一层次的概念。(×)
软件质量管理即QM由QA和QC构成,软件测试属于QC的核心工作内容。
39 我们有理由相信只要能够设计出尽可能好的测试方案,经过严格测试之后的软
件可以没有缺陷。(×)
40 程序员兼任测试员可以提高工作效率。(×)
41 在设计测试用例时,应当包括合理的输入条件和不合理的输入条件。(√)
42 传统测试是在开发的后期才介入,现在测试活动已经扩展到了整个生命周期。
(√)
43 传统测试以发现错误为目的,现在测试已经扩展到了错误预防的范畴。(√)
44 软件测试的生命周期包括测试计划、测试设计、测试执行、缺陷跟踪、测试评估。(√)
45 调试从一个已知的条件开始,使用预先定义的过程,有预知的结果;测试从一个未知的条件开始,结束的过程不可预计。(×)
顺序反了
46 白盒测试往往会造成测试用例之间可能存在严重的冗余和未测
试的功能漏洞。(×)
47 在边界值方法中,对于一个有n个变量的函数作最坏情况测试,生成的测试用例个数是7n 个。(×)
4n+1??
48 软件生存周期是从软件开始开发到开发结束的整个时期。(×) 软件生命周期(Software Life Cycle,SLC)是软件的产生直到报废或停止使用的生命周期。
49 在所有的黑盒测试方法中,基于决策表的测试是最为严格、最具有逻辑性的测试方法。(√)
50 永远有缺陷类型会在测试的一个层次上被发现,并且能够在另一个层次上逃避检测。(√)
51 测试用例的数目越多,测试的效果越好。(×)
52 只要能够达到100%的逻辑覆盖率,就可以保证程序的正确性。(×)
53 单元测试属于动态测试。(×)
54 验收测试是以最终用户为主的测试。(√) 55 没有发现错误的测试是没有价值的。(√) 56 可以把不合格的开发人员安排做测试。(×)
57 移动应用测试面临的一个困难是软件(app)运行的硬件平台太多。(√)
58 众测是解决移动测试待测平台太多困境的有效方法。(√) 59 在Voas的PIE模型中,执行了错误语句(Fault),程序不一定进入错误状态(Error),并且即使进入错误状态,程序最终也有可能不表现出失效(Failure),我们把这种情况称之为偶然正确性。(√)
60 回归测试是用于验证改变了的系统或组件是否保持原有的特性。(√)
二、思考与辨析题 1、软件缺陷?
2、黑盒测试用于检测发现哪几类错误?
3、正交类测试? 4、静态白盒测试? 5、负载测试? 6、软件测试过程模型。 7、缺陷管理的目标? 8、软件测试的作用?
9、Alpha测试与beta测试的区别? 10、什么情况下测试结束? 11、测试用例设计的关键? 12、黑盒测试用例的设计方法? 13、单元测试主要测试那几方面的问题? 14、移动应用测试存在的困难?
15、性能测试过程中测试脚本的编写过程。 16、在线测试的原理? 17、软件质量的度量方法。
18、举例说明Fault、Failure、Error的区别 19、灰盒测试与白盒测试及黑盒测试的区别。 20、Ad-hoc测试方法的基本原理。 21、错误猜测方法的基本原理。 22、常见的组合测试技术 23、探索式测试?
24、列举你日常使用软件时碰到的5种性能问题。 25、为什么要性能测试? 26、Fuzz 测试?
27、SQL 注入攻击(SQL Injection)。 28、跨站脚本攻击(XSS)。 29、软件响应速度的2-5-10原则? 30、实际测试用例设计应包括哪些要素。 31、PIE模型?
32、结合Kikbug移动应用综测平台,阐述移动应用测试的难点。
三、综合题
1.能为任意程序段设计一组测试用例,要求分别满足语句覆盖、判定覆盖、条件
覆盖、条件组合覆盖。
2.能够依据一段过程逻辑文字(*****)绘制决策表。
3.模仿Kikbug,设计一个用于移动应用测试的众测平台。描述平台结构及各模块
的功能。
因篇幅问题不能全部显示,请点此查看更多更全内容