您的当前位置:首页正文

软件测试复习题

来源:好兔宠物网


软件测试与质量保证复习提纲

提要:

【复习重点】单元测试(黑盒测试:边界值、等价类、决策表;白盒测试:语句覆盖、条件覆盖、判定(分支)覆盖、判定/条件覆盖、条件组合覆盖、路径覆盖、基路径法、数据流测试——定义节点、使用节点)

【复习方法】立足于教材,重点看讲课课件及所讲过的习题 【复习题目】 黑盒测试: 边界值

一般边界条件法 (4n+1) 健壮性边界条件法(6n+1) 最坏边界条件法(5n)

健壮最坏边界条件法(7n) 等价类:注意无效等价类

决策表:先得到等价类,简化决策表

白盒测试 (程序流程图、DD路径图):

语句路径覆盖、判定(分支)路径覆盖、条件路径覆盖、判定/条件路径覆盖、条件组合路径覆盖、路径覆盖法 基路径法

圈复杂度V(G)= e –n +2 = 判定节点数 + 1=闭合区域数+1 其中 e表示程序控制流图中边的数量、n表示节点的数量

定义/使用法:按照程序中变量定义和使用的位置来选择程序的测试路径的一种测试方法。 在程序设计中,程序的变量有两种不同作用:

1、将数据存储起来(变量出现在赋值语句的左边)

2、将所存储的数据取出来(变量出现在赋值语句的右边) 常见的定义/使用路径错误包括: 1、引用一个未初始化的变量 2、一个变量的死(无用)定义 3、等待一个还没有安排的进程 4、安排了一个与自身相同的进程 5、等待一个先前已经被中止了的进程 6、引用一个在并行进程中被定义的变量 7、引用一个值不确定的变量

定义节点:变量关联的存款单元的内容变化 使用节点:变量关联的存储单元的内容保持不变

谓词使用:节点外度(出度)>=2

计算使用:节点外度(出度)<=1

- 1 -

注:一个变量节点不是定义节点就是使用节点,也可能两者都是。如 a = a + 1 或 a ++ 关于变量V:

定义/使用路径:路径的最初节点是定义节点,最终节点是使用节点

定义清晰(清除)路径:只有路径的最初节点是定义节点,中间没有定义节点 注:定义清晰路径一定是定义/使用路径 因果图法

找出原因及结果,会画因果图,并将因果图转化为决策表,设计测试用例 正交试验法 会计算实验次数

- 2 -

题目汇总

一、简答题

1、简述软件测试的基本职责

2、试论述自底向上/自顶向下集成测试的实施步骤及其优缺点

3、什么是集成测试,一般在何时进行;请论述其集成测试方法的分类 4、什么是维恩图,如何通过维恩图来理解软件测试

5、试叙述V、W、H、X测试模型,给出其示意图,并说明其局限性和改进途径 6、简述等价类的划分原则及测试用例的设计原则

7、功能性测试有哪几种方法?请简单描述各种方法的特点 8、简述G.Myers阐述的测试目标 9、简述白盒测试的优缺点

10、什么是软件缺陷,产生软件缺陷的原因有哪些 11、简述黑盒测试的优缺点

12、简述黑盒测试和白盒测试的区别及联系

13、简述单元测试、集成测试与系统测试的区别及联系 14、软件可靠性测试与硬件可靠性测试的区别 二、判断正误题

1. 测试员需要尽早地和不断的进行软件测试 2. 测试员是可以对所有可能的输入进行测试的

3. 测试员可以对每一条程序的可能执行路径进行测试 4. 通过软件测试,我们可以找出所有的软件错误 5. 程序员应该尽量避免测试自己书写的程序 6. 软件调试和软件测试是一样的

7. 软件测试在软件开发过程中可以忽略

8. 所有的软件测试都应该在软件开发完成之后进行 9. 软件测试的流程是单元测试->集成测试->系统测试 10. 单元测试是一种浪费时间的工作

11. 如果程序员非常出色,是可以不进行单元测试的 12. 集成测试可以捕捉到所有的BUG 13. 单元测试的成本效率不高

14. 单元测试是证明代码做了什么的工作

15. 等价类测试的关键在于选择确定类的等价关系

16. 对于软件测试,完全测试是不可能的,但是我们应该修复所有找到的缺陷 17. 经过软件测试,如果发现的缺陷数目越多,则软件中剩余残存的缺陷数目越少 18. 软件测试就是通过一定的方法测试程序中是否存在错误 19. 完整的测试流程为:单元测试—联调—集成测试—系统测试 20. 测试用例应由测试输入数据和对应的预期输出结果这两部分组成

21. 如果一个等价类中的一个测试没有发现缺陷,那么这个等价类的其他测试也不能发现缺陷 22. 在软件测试过程中,不允许程序员检查自己的程序

23. 对于软件缺陷是否应该修复,其决策过程应由软件测试员、项目管理员和程序员共同参与 24. 软件测试得越彻底,得到的经济收益也就越高 25. 达到了判定覆盖也一定达到了语句覆盖

26. 自底向上进行集成测试的优点是不需要构造桩(stub)模块

- 3 -

27. 一个类的部分代码做修改了,只需要保证修改的部分测试到了即可 28. TMM是CMM的一个关键性级别(不需要做) 29. 白盒测试也称逻辑驱动测试

30. 测试从一个已知的条件开始,使用预先定义的过程,有预知的结果;调试从一个未知的条件开始,结束的过程不可预计

31. 所有的软件故障均有编码错误引起

32. W模型仅仅把测试过程作为在需求分析、概要设计、详细设计及编码之后的一个阶段 33. 验收测试往往不是对系统进行全覆盖测试,而是针对用户的核心业务流程进行的测试 34. 自顶向下集成测试最显著的优点是不需要桩模块

35. 如果输入条件是一个布尔量,则可以确定一个有效等价类和一个无效等价类 36. 由于完全的测试是不能的,所以对于任何程序的任何一种覆盖不可能实现全覆盖 37. 自底向上集成测试最显著的优点是不需要桩模块 38. 软件缺陷是由软件失效导致的结果

39. 条件覆盖的覆盖能力不一定强于判定覆盖

40. 一个类的部分代码做修改了,只需要保证修改的部分测试到了即可 41. 正交试验法产生的测试用例数目一定要少于简单对比法产生的测试用例

三、填空题

1.对于一个具有n个变量的函数,最坏情况的边界值测试会产生___个测试用例;而边界值分析会产生____个测试用例。

2.在边界值分析测试技术、等价类测试技术和决策表技术中,按技术精细程序排序的结果为___。 3.在进行集成测试时,测试人员所必须的文档为:_______。

4. 在用维恩图(如下图所示)描述软件测试的过程中,测试人员应该使区域________(填入数字)尽可能地扩大。

圆圈S表示规格说明描述的程序行为 S P 圆圈P表示程序已实现的程序行为 1 2 3 圆圈T表示测试用例覆盖的程序行为

全集为所有的程序行为 4 T

5. 在软件测试中,我们最关注的就是软件中存在的各种缺陷,而导致软件缺陷产生的最大原因是______。

6.软件测试的本质是___。

7.从软件测试用例设计方法的角度分类,软件测试可分为___ __和_____。 8.边界值测试的基本原理为 ___。

9.在集成测试策略中,基于分解的集成策略主要有:____、____和___。 10.在传统软件中,确定单元的指导方针是:___、___和__ _。 11.进行黑盒测试时,测试人员必须的文档为_______。 12.软件测试有两个基本职责,即___。 13.软件测试员的目标为__ 。

14.在面向对象软件的测试中,一般是使用____和______作为测试单元。 15.驱动模块和桩模块的定义以及用途 16.正交试验法的实验次数,例如6因子5水平的问题采用“简单对比法”需要进行的试验次数___,

- 4 -

正交试验法的试验次数____

四、用例设计题

1.采用健壮性边界值测试方法,对一个两个数的加法器进行测试(两个输入值均在100至200之间,包含100和200)

2.金额校验测试用例设计:金额范围[0.00,99.99](最多只能有两位小数),要求划分等价类,然后设计测试用例。

例如输入:56.57 21. 23.4

输出: 56元5角7分 21元 23元4角

3.某直辖市的电话号码由三部分组成,这三部分的名称和内容分别是: 地区码:空白或4位数字;

前缀:非“0”和非“1”开头的4位数字; 后缀:4位数字

假定被测程序接受一切符合上述规定的电话号码,拒绝所有不符合的号码,试设计它的测试用例(支持单缺陷假设)。

4.请为前一日(Predate)/下一日(Nextdate)设计强一般等价类(即假设所有输入数据均合法)。

5.试对以下程序设计语句覆盖、路径覆盖、条件覆盖、判定条件覆盖、条件组合覆盖以及判定覆盖测试用例。

(1)if(x>=80&&y>=80) t=1; else

if(x+y>=140&&(x>=90||y>=90)) t=2; else

t=3;

(2)void DoWork(int x,int y,int z)

{

int k=0,j=0;

if((x>3)&&(z<10)) { k = x*y-1;

j = sqrt(k); } if((x==4)||(y>5)) j = x*y+10; j = j%3; }

6. 有一个饮料自动售货机(处理单价为5角)的控制处理软件,它的规格说明为:若投入5角钱的硬币,按下“橙汁”或“啤酒”的按钮,则相应的饮料就会送出来;若投入1元钱的硬币,同样也是按下“橙汁”或“啤酒”的按钮,则自动售货机在送出相应饮料的同时退还5角硬币。试做出决策表。

7. 第二次测验的五道白盒测试的题目 8. 找零钱例子 9. 佣金问题案例

- 5 -

10 .三角形问题案例

11. 课件上白盒测试的案例 12. MM路径,参考教材示例

13. 程序的规格说明要求:输入的第一个字符必须是#或*,第二个字符必须是一个数字,在此情况下进行文件的修改;如果第一个字符不是#或*,则给出信息N,如果第二个字符不是数字,则给出信息M。试画出以上问题的决策表及因果图

14. 年薪制员工:严重过失,扣年终风险金的4%;过失,扣年终风险金的2%,非年薪制员工:过失,扣当月薪资的4%。画出以上问题的因果图 五、名词解释 1.软件测试 2.测试用例 3.回归测试

4.白盒测试(结构性测试) 5.黑盒测试(功能性测试) 6.单元测试 7.集成测试 8.系统测试 9.失效

10.软件故障 11.联调

12.V&V(验证和确认) 13.遗漏缺陷 14.测试覆盖率 15.软件可靠性

六、论述题 1.TDD 2.PDCA

3.测试模型(V、W、H) 4.软件可靠性测试的步骤

- 6 -

因篇幅问题不能全部显示,请点此查看更多更全内容