1、测试用例不仅要选用合理的测试输入数据,还需要选用不合理的测试输入数据,这样能更多地《发现错误》,提高程序的可靠性。对于不合理的测试输入数据,程序应《拒绝执行》,并给出相应的提示。
2、动态测试指通过《运行程序》发现错误。对软件产品进行动态测试时使用黑盒测试法和《白盒测试》法。
3、静态测试指《被测试程序》不在机器上运行,而是采用《人工测试》和《计算机辅助静态分析》的手段对程序进行检测。
4、黑盒测试依据《软件规格说明》,检查程序是否满足《功能需求》。因此,黑盒测试由称为功能测试或《数据驱动》测试。
5、白盒测试以检查处理过程的细节为基础,对程序中尽可能多的《逻辑路径》进行测试,检查内部《逻辑结构》和《运行原理》是否有错,程序的《运行状态》与预期的状态是否一致。
6、在基本路径测试中,独立路径是指包括一组以前没有处理过的《语句或条件》的一条路径。从程序图来看,一条独立路径是至少包含有一条《从未走过》的边的路径。
7、在单元测试中,驱动模块的作用是用来模拟被测模块的《上层调用模块》。它的工作是接受《测试输入数据》,以上层模块调用被测模块的形式《把数据传送给》被测模块,接收被测模块的《实测结果》并输出。
8、在单元测试中,桩模块用来代替被测模块的《子模块》。其作用是《返回被测模块所需》的信息。 9、错误的群集现象是指模块错误发现率与模块的残留错误数成《正比》关系。 判断题
1 、好的测试员不懈追求完美。( T)
2、 测试程序仅仅按预期方式运行就行了。(F ) 3、 不存在质量很高但可靠性很差的产品。(F )
4、 软件测试员可以对产品说明书进行白盒测试。(F ) 5、 静态白盒测试可以找出遗漏之处和问题。( T) 6、 总是首先设计白盒测试用例。(F )
7、 可以发布具有配置缺陷的软件产品。(T )
8、 所有软件必须进行某种程度的兼容性测试。(T )
9、 所有软件都有一个用户界面,因此必须测试易用性。(F ) 10、 测试组负责软件质量。(F )
11、 软件测试按照测试过程分类为黑盒、白盒测试。( F)
12、在设计测试用例时,应包括合理的输入条件和不合理的输入条件。 ( T)
13、集成测试计划在需求分析阶段末提交。(F ) 14、单元测试属于动态测试。 (F )
15、缺陷跟踪系统只针对测试人员来使用。(F )
16、从用户软件开发者的角度出发,普遍希望通过软件测试暴露软件中隐藏的错误和缺陷,以考虑是否可接受该产品。 ( F)
17、项目立项前测试人员不需要提交任何工件。( F) 18、软件测试的目的是尽可能多的找出软件的缺陷。( F)
19、软件项目在进入需求分析阶段,测试人员应该开始介入其中。(T ) 20、软件生存周期是从软件开始开发到开发结束的整个时期。( F) 21、单元测试能发现约80%的软件缺陷。( F)
22、数据流图和数据字典共同构成系统的逻辑模型。(T )
23、负载测试是验证要检验的系统的能力最高能达到什么程度。(F ) 24、测试人员要坚持原则,缺陷未修复完坚决不予通过。(T 25、代码评审员一般由测试员担任。( F) 26、测试组负责软件质量。(F )
27、程序的效率与程序的复杂性相关。(F )
28、详细设计的目的是为软件结构图中的每一个模块确定使用的算法和块内数据结构,并用某种选定的表达工具给出清晰的描述。 (T )
29、软件是一种逻辑实体,而不是具体的物理实体,因而它具有抽象性。 (T ) 30、测试程序仅仅按预期方式运行就行了。( F) 选择题
1、在软件测试中,下面说法中错误的是(B)。
A. 测试是为了发现程序中的错误而执行程序的过程 B. 测试是为了表明程序是正确的
C. 好的测试方案是极可能发现迄今为止尚未发现的错误的方案 D. 成功的测试是发现了至今为止尚未发现的错误的测试 2、软件测试的目的是(B)。 A. 试验性运行软件 B. 发现软件错误 C. 证明软件正确
D. 找出软件中全部错误
3、软件测试用例主要由测试输入数据和(C)两部分组成。 A. 测试计划 B. 测试规则
C. 测试的预期结果
D. 以往测试记录分析
4、与设计测试用例无关的文档是(A )。 A. 项目开发计划 B. 需求规格说明书 C. 软件设计说明书 D. 源程序
5、软件测试是软件质量保证的主要手段之一,测试的成本已超过(A )的30%以上。因此,提高测试的有效性非常重要。 A. 软件开发成本 B. 软件维护成本
C. 软件开发成本和维护成本 D. 软件研制成本
6、“高产”的测试是指(C )。
A. 用适量的测试用例说明被测试程序正确无误
B. 用适量的测试用例说明被测试程序符合相应的要求 C. 用适量的测试用例发现被测试程序尽可能多的错 D. 用适量的测试用例纠正被测试程序尽可能多的错误
7、如果想要进行成功的测试,为其设计测试用例主要依赖于(B )。 A. 黑盒测试方法 B. 测试人员的经验 C. 白盒测试方法 D. 错误推测法
8、使用白盒测试方法时,确定测试数据应根据(A )和指定的覆盖标准。 A. 程序的内部结构 B. 程序的复杂性 C. 使用说明书 D. 程序的功能
9、在用逻辑覆盖法设计测试用例时,有语句覆盖、分支覆盖、条件覆盖、判定-条件覆盖、条件组合覆盖和路径覆盖等。其中(D)是最强的覆盖准则。 A. 语句覆盖 B. 条件覆盖
C. 判定-条件覆盖 D. 路径覆盖
10、在设计测试用例时,(A )是用得最多的一种黑盒测试方法。 A. 等价类划分
B. 边界值分析 C. 因果图 D. 功能图
11、在黑盒测试中,着重检查输入条件的组合的测试用例设计方法是(D )。 A. 等价类划分 B. 边界值分析 C. 错误推测法 D. 因果图法
12、从下列叙述中,能够与软件开发各阶段,如需求分析、设计、编码相对应的软件测试是(D)。 A. 集成测试、确认测试、单元测试 B. 单元测试、集成测试、确认测试 C. 单元测试、确认测试、集成测试 D. 确认测试、集成测试、单元测试
13、单元测试将根据在(D )阶段中产生的规格说明进行 A. 可行性研究与计划 B. 需求分析 C. 概要设计 D. 详细设计
14、集成测试计划是在(C )阶段制定的 A. 可行性研究与计划 B. 需求分析 C. 概要设计 D. 详细设计
15、确认测试计划是在(B )阶段制定的。 A. 可行性研究与计划 B. 需求分析 C. 概要设计 D. 详细设计
16、软件的集成测试最好是由(D )承担,以提高集成测试的效果。 A. 该软件的设计者
B. 该软件开发组的负责人 C. 该软件的编程者
D. 不属于该开发组的人员
17、(D )是简化了的模拟较低层次模块功能的虚拟子程序。 A. 过程
B. 函数 C. 仿真 D. 桩
18、(A )是指为查明程序中的错误和缺陷,可能使用的工具和手段。 A. 调试技术 B. 测试技术 C. 跟踪法 D. 动态测试
19、从已发现故障的存在到找到准确的故障位置并确定故障的性质,这一过程称为(C )。 A. 错误检测 B. 故障排除 C. 调试 D. 测试
20、在程序设计的过程中应为程序调试做好准备,主要体现在(D)方面。 A. 采用模块化、结构化的程序设计方法设计程序 B. 编写程序时要为程序调试提供足够的灵活性
C. 根据程序调试的需要,选择并安排适当的中间结果输出和必要的断 D. 以上全是
21、统计资料表明,软件测试的工作量占整个软件开发工作量的(C )。 A. 30% B. 70%
C. 40%~50% D. 95%
22、软件测试计划是一些文档,它们描述了(D )。 A. 软件的性质
B. 软件的功能和测试用例 C. 软件的规定动作
D. 对于预定的测试活动将要采取的手段
23、IBM公司的统计资料表明,使用静态测试的方法最高可以查出在测试中查出的全部软件错误的(B )。 A. 80% B. 70% C. 50% D. 35%
24、黑盒测试方法的优点是(D )。
A. 可测试软件的特定部位 B. 能站在用户立场测试 C. 可按软件内部结构测试
D. 可发现实现功能需求中的错误 25、白盒测试方法的优点是(C )。 A. 可测试软件的特定部位 B. 能站在用户立场测试 C. 可按软件内部结构测试
D. 可发现实现功能需求中的错误
26、等价类划分完成后,就可得出(C ),它是确定测试用例的基础。 A. 有效等价类 B. 无效等价 C. 等价类表 D. 测试用例集
27、由因果图转换出来的(A )是确定测试用例的基础。 A. 判定表 B. 约束条件表 C. 输入状态表 D. 输出状态表
28、(A)是用户和设计交换最频繁的方法 A. 原型化方法 B. 瀑布模型方法 C. 螺旋模型方法 D. 构件组装模型
29、软件测试的目的: (C) A. 避免软件开发中出现的错误 B. 发现软件开发中出现的错误
C. 尽可能发现并排除软件中潜藏的错误,提高软件的可靠性 D. 修改软件中出现的错误
30、某次程序调试没有出现预计的结果,下列(B )不可能是导致出错的原因。 A. 变量没有初始化
B. 编写的语句书写格式不规范 C. 循环控制出错 D. 代码输入有误
31、下列关于程序效率的描述错误的是(B )。
A. 提高程序的执行速度可以提高程序的效率 B. 降低程序占用的存储空间可以提高程序的效率
C. 源程序的效率与详细设计阶段确定的算法的效率无关 D. 好的程序设计可以提高效率
32、软件测试是软件开发过程的重要阶段,是软件质量保证的重要手段,下列哪个(些)是软件测试的任务?D
Ⅰ预防软件发生错误 Ⅱ发现改正程序错误 Ⅲ提供诊断错误信息 A.只有Ⅰ B.只有Ⅱ C.只有Ⅲ D.都是
33、软件测试是软件质挝保证的重要手段,下述哪种测试是软件测试的最基础环节?B A.功能测试 B.单元测试 C.结构测试 D.确认测试
34、通常可分为白盒测试和黑盒测试。白盒测试是根据程序的(C )来设计测试用例,黑盒测试是根据软件的规格说明来设计测试用例。 A.功能 B.性能 C.内部逻辑 D.内部数据
35、常用的黑盒测试方法有边值分析、等价类划分、错误猜测、因果图等。其中(C )经常与其它方法结合起来使用。软件测试的步骤主要有单元测试、集成测试和确认测试。 A.边值分析 B.等价类划分 C.错误猜测 D.因果图 选择填空题
1、从供选择的答案中选出应填入下列( )中的字句。
软件测试的目的是( A2 )。为了提高测试的效率,应该( B4 )。使用白盒测试方法时,确定测试数据应根据( C1 )和指定的覆盖标准。与设计测试数据无关的文档是( D4 )。软件的集成测试工作最好由( E4 )承担,以提高集成测试的效果BR>供选择的答案: A. 评价软件的质量 发现软件的错误
找出软件中的所有错误 证明软件是正确的
B.
随机地选取测试数据
取一切可能的输入数据作为测试数据 在完成编码以后制定软件的测试计划
选择发现错误的可能性大的数据作为测试数据
C. 程序的内部逻辑 程序的复杂程度
使用说明书 程序的功能
D. 该软件的设计人员 程序的复杂程度
源程序 项目开发计划
E. 该软件的设计人员 该软件开发组的负责人
该软件的编程人员 不属该软件开发组的软件人员
2、从供选择的答案中选出应填入下列( )中的字句。
为了把握软件开发各个环节的正确性和协调性,人们需要进行( A2 )和( B3 )工作。( A )的目的是想证实在一给定的外部环境中软件的逻辑正确性。它包括( C2 )和( D3 ),( B )则试图证明在软件生存期各个阶段,以及阶段间的逻辑( E3 )、( F4 )和正确性。 供选择的答案: A, B. 操作② 确认 ③ 验证 ④ 测试 ⑤ 调试 C, D. 用户的确认 ② 需求规格说明的确认
③ 程序的确认 ④ 测试的确认
E, F. 可靠性② 独立性③ 协调性 ④ 完备性 ⑤ 扩充性 3、从供选择的答案中选出应填入下列( )中的字句。
测试过程需要三类输入:( A )、( B )和( C )。请选择正确的答案填入下图中以完成测试信息处理的全过程。 供选择的答案2 4 6 3 1 2 A~C. 接口选择 软件配置 硬件配置
④ 测试配置 测试环境 测试工具
D~ F. 排错 ② 可靠性分析 ③ 结果分析 ④ 数据分类 4、请从供选择的答案中选出应填入下列( )中的字句。
程序的三种基本控制结构是( A2 )。它们的共同点是( B4 )。结构化程序设计的一种基本方法是( C4 )。软件测试的目的是( D2 )。软件调试的目的是( E1 )。 供选择的答案: A. 过程,子程序,分程序 ② 顺序,条件,循环
递归,堆栈,队列 ④ 调用,返回,转移
B. 不能嵌套使用 ② 只能用来写简单的程序
已经用硬件实现 ④ 只有一个入口和一个出口
C. 筛选法 ② 递归法 ③ 归纳法 ④ 逐步求精法
D.
证明程序中没有错误 ② 发现程序中的错误
测量程序的动态特性 ④ 检查程序中的语法错误
E. 找出错误所在并改正之 ② 排除存在错误的可能性
对错误性质进行分类 ④ 统计出错的次数
5、从供选择的答案中选出同下列各条叙述关系最密切的字句。
(1) 对可靠性要求很高的软件,例如操作系统,由第三者对源代码进行逐行检查。
(2) 已有的软件被改版时,由于受到变更的影响,改版前正常的功能可能发生异常,性能也可能下降。因此,对变更的软件进行测试是必要的。
(3) 在意识到被测试模块的内部结构或算法的情况下进行测试。
(4) 为了确认用户的需求,先做出系统的主要部分,提交给用户试用。
(5) 在测试具有层次结构的大型软件时,有一种方法是从上层模块开始,由上到下进行测试。此时,有必要用一些模块替代尚未测试过的下层模块。 供选择的答案: A~E: 仿真器② 代码审查③ 模拟器④ 桩
驱动器⑥ 域测试⑦ 黑盒测试⑧ 原型 白盒测试 ⑩ 退化测试
6、从供选择的答案中选出应填入下面叙述的( )内的正确答案。 软件测试方法可分为黑盒测试法和白盒测试法两种。
黑盒测试法是通过分析程序的( A3 )来设计测试用例的方法。除了测试程序外,它还适用于对( B4 )阶段的软件文档进行测试。 白盒测试法是根据程序的( C2 )来设计测试用例的方法。除了测试程序外,它也适用于对( D2 )阶段的软件文档进行测试。
白盒法测试程序时常按照给定的覆盖条件选取测试用例。( E2 )覆盖比( F1 )覆盖严格,它使得每一个判定的每一条分支至少经历一次。( G4 )覆盖既是判定覆盖,又是条件覆盖,但它并不保证使各种条件都能取到所有可能的值。( H5 )覆盖比其他条件都要严格,但它不能保证覆盖程序中的每一条路径BR>单元测试一般以( I1 )为主,测试的依据是( J1 )。 供选择的答案: A, C: 应用范围 ② 内部逻辑 ③ 功能 ④ 输入数据 B, D: 编码 ② 软件详细设计 ③ 软件总体设计 ④ 需求分析 E~H: 语句 ② 判定 ③ 条件 ④ 判定/条件
多重条件 ⑥ 路径
I: 白盒法 ② 黑盒法 J: ① 模块功能规格说明 ② 系统模块结构图 ③ 系统需求规格说明 7、从供选择的答案中选出应填入下面叙述的( )内的正确答案。
集成测试也叫做( A3 )或( B6 )。通常,在( C1 )的基础上,将所有模块按照设计要求集成成为系统。子系统的集成测试特别称为nbsp; D2 ),它所做的工作是要找出子系统和系统需求规格说明之间的( E6 )。需要考虑的问题是:在把各个模块连接起来的时侯,穿越模块接口的数据是否会( F2 ); 一个模块的功能是否会对另一个模块的功能产生不利的影响;各个( G1 )组合起来,能否达到预期要求的( H3 );( I5 )是否有问题;单个模块的误差累积起来是否会放大。 供选择的答案: A~D. 单元测试② 部件测试③ 集成测试
④ 系统测试⑤ 确认测试⑥ 联合测试
E~I. 子功能 ② 丢失③ 父功能
④ 局部数据结构 ⑤ 全局数据结构⑥ 不一致 ⑦ 一致
8、从供选择的答案中选出应该填入下列叙述的( )内的正确答案。
软件测试中常用的静态分析方法是( A1 )和( B5 )。( B )用于检查模块或子程序间的调用是否正确。分析方法(白盒方法)中常用的方法是( C1 )方法。非分析方法(黑盒方法)中常用的方法是( D2 )方法和( E3 )方法。( E )方法根据输出对输入的依赖关系设计测试用例。 供选择的答案: A~B: 引用分析 ② 算法分析 ③ 可靠性分析 ④ 效率分析
接口分析 ⑥ 操作分析
C~E: 路径测试 ② 等价类 ③ 因果图 ④ 归纳测试
综合测试 ⑥ 追踪 ⑦ 深度优先 ⑧ 调试 相对图
9、从供选择的答案中选出应填入下面叙述的( )内的正确答案。
等价类划分是一种典型的( A2 )方法,也是一种非常实用的重要的测试方法。使用这一方法,完全不考虑程序的( B1 )。用所有可能输入的数据来测试程序是不可能的,只能从全部可供输入的数据中选择一个( C2 )进行测试。( D5 )是指某个输入域的集合,在该集合中,各个输入数据对于揭露程序中的错误是( E3 )。 供选择的答案: A: 白盒测试方法 ② 黑盒测试方法 B: ① 内部结构② 外部环境 ③ 顺序④ 流程 C~E: 全集 ② 子集 ③ 等效BR>④ 不同的⑤ 等价类⑥ 典型集
简答
1你认为一个优秀的测试工程师应该具备哪些素质?
探索者,故障排除员,不放过任何蛛丝马迹,创造性,老练的追求完美者,判断准确,注重策略和外交,善于说服。
2软件开发模型分哪几种
瀑布模型、渐增模型/演化/迭代、原型模型、螺旋模型、喷泉模型、智能模型、混合模型 3软件生命周期分哪几个阶段?
可行性分析、总体描述、系统设计、编码、调试和测试、验收与运行、维护升级到废弃 4应该由谁来进行确认测试?是软件开发者还是软件用户?为什么?
由软件开发者,开发者对软件产品进行评估,若不满足要求则与用户协商解决办法 5如果能够执行完美的黑盒测试,还需要进行白盒测试吗?为什么?
需要,黑盒测试可根据程序规格检验程序是否完成规定功能,但无法发现程序内部的编码和逻辑错误,白盒测试与之相反互补。
6产品测试到什么时候就算是足够了?
测试一直贯穿软件的整个生命周期,从需求、设计到编码、实现一直到软件的最终交付用户,测试时期已满或特定的测试用例作为判断测试停止的基础。 7测试计划的目的是什么?
确定测试基本原则,生成测试概要设计。
8软件测试应该划分几个阶段简述各个阶段应重点测试的点各个阶段的含义?
按照开发阶段划分,软件测试可分为单元测试、集成测试,系统测试和验收测试。 单元测试:针对每个单元的测试, 以确保每个模块能正常工作为目标。 集成测试:对已测试过的模块进行组装,进行集成测试。 系统测试:检验软件产品能否与系统的其他部分协调工作。 验收测试:检验软件产品质量的最后一道工序。
9对小的程序进行穷举测试是可能的,用穷举测试能否保证程序是百分之百正确呢? 不能,不能查出错误程序本身违反了设计规范 不可能查出程序因遗漏而出错 发现不了一些与权据相关的错误
10在任何情况下单元测试都是可能的吗?都是需要的吗?、
单元测试,其目的在于发现各模块内部可能存在的各种差错。多个模块可以平行地独立进行单元测试。单元测试是在编码阶段完成的,每编写出一个程序模块,就开始做这个模块的单元测试,所以只要采用模块化方法开发软件,单元测试都是必需的。 11α测试和β测试
α是软件公司组织内部人员模拟各类用户对将面世的软件产品进行测试。Β是由软件的多个用户在一个或多个用户的实际使用环境下进行测试。 12驱动模块和桩模块
桩模块:也叫存根程序,用于模拟被测模块工作过程中所调用的子模块
驱动模块:用于模拟所测模块的上级模块,它接受测试数据,把这些数据传输给被测模块。 13白盒测试和黑盒测试
白盒测试,它是按照程序内部的结构测试程序,通过测试来检测产品内部动作是否按照设计规格说明书的规定正常进行。黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。 14静态测试和动态测试
静态方法是指不运行被测程序本身,仅通过分析或检查源程序的语法、结构、过程、接口等来检查程序的正确性。
动态测试方法是指通过运行被测程序,检查运行结果与预期结果的差异,并分析运行效率和健壮性等性能,
15累进测试和回归测试
回归测试是指修改了旧代码后,重新进行测试以确认修改没有引入新的错误或导致其他代码产生错误。 问答计算题
1、画出下列伪码程序的程序流程图。 START IF m THEN WHILE n DO A B
END DO ELSE BLOCK C D
END BLOCK END IF STOP
2、如图所示的程序有三条不同的路径。分别表示为L1(a→b)、L2(a→c→d)、L3(a→c→e),或简写为ace、abd、abe及acd。根据判定覆盖、条件覆盖、判定–条件覆盖、条件组合覆盖和路径覆盖等五种覆盖标准,从供选择的答案中分别找出满足相应覆盖标准的最小测试用例组。(用①~ ⑩回答) 供选择的答案: x = 90, y = 90x = 50, y = 50 x = 90, y = 90x = 90, y = 70 x = 50, y = 50x = 40, x = 90 ⑤x = 90, y = 90x = 90, y = 90
x = 50, y = 50x = 70, y = 90 x = 90, y = 70x = 50, y = 50
⑦
x = 90, y = 90x = 90, y = 90 x = 50, y = 50x = 50, y = 50 x = 80, y = 70x = 90, y = 50 x = 70, y = 90x = 80, y = 80 ⑨x = 90, y = 90x = 90, y = 90
x = 90, y = 70x = 80, y = 80 x = 90, y = 30x = 90, y = 70 x = 70, y = 90x = 90, y = 30 x = 30, y = 90x = 70, y = 90 x = 70, y = 70x = 30, y = 90 x = 50, y = 50x = 70, y = 70 x = 50, y = 50
3、在白盒测试用例设计中,有语句覆盖、分支覆盖、条件覆盖、路径覆盖等,其中( A 4 )是最强的覆盖准则。为了对如下图所示的程序段进行覆盖测试,必须适当地选取测试用例组。若x, y是两个变量,可供选择的测试用例组共有Ⅰ、Ⅱ、Ⅲ、Ⅳ四组,如表中给出,则实现判定覆盖至少应采取的测试用例组是( B 5 )或( C 8 );实现条件覆盖至少应采取的测试用例组是( D 4 );实现路径覆盖至少应采取的测试用例组是( E 5 )或( F 8 )。 供选择的答案 A: 语句覆盖 ② 条件覆盖 ③ 判定覆盖 ④ 路径覆盖 B~F: Ⅰ和Ⅱ组 ② Ⅱ和Ⅲ组 ③ Ⅲ和Ⅳ组 ④ Ⅰ和Ⅳ组
⑤ Ⅰ、Ⅱ、Ⅲ组 ⑥ Ⅱ、Ⅲ、Ⅳ组 ⑦ Ⅰ、Ⅲ、Ⅳ组 ⑧ Ⅰ、Ⅱ、Ⅳ组
4、根据下面给出的规格说明,利用等价类划分的方法,给出足够的测试用例。
一个程序读入三个整数。把此三个数值看成是一个三角形的三个边。这个程序要打印出信息,说明这个三角形是三边不等的、是等腰的、还是等边的。
5、根据下面给出的规格说明,利用边界值的方法,给出足够的测试用例。
有一个处理单价为1元5角钱的盒装饮料的自动售货机软件。若投入1元5角硬币,按下“可乐”、“雪碧”或“红茶”按钮,相应的饮料就送出来。若投入的是2元硬币,在送出饮料的同时退还5角硬币。
因篇幅问题不能全部显示,请点此查看更多更全内容