软件测试试卷-答案

  • 格式:docx
  • 大小:103.96 KB
  • 文档页数:7

下载文档原格式

  / 7
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

注意:要求将以下各题答案写在答题纸上

、填空题(每题3分,共15分)

1、软件开发是一个自顶向下逐步细化和求精过程,而软件测试是一个 (自底向上或相反顺

序)集成的过程。

立的路径

)(

错误处理

)5个方面的测试问题。

、简述以下各题(每题10分,共30分)

1、简述静态测试和动态测试的区别?

软件测试可分为静态测试( Static Test ing )和动态测试(Dy namic

Test ing )。顾名思义,静态测试就是通过对被测程序的静态审查,发 现代码中潜在的错

误。它一般用人工方式脱机完成,故亦称人工测试 或代码评审(Code Review );也可借助于静态分析器在机器上以自动 方式进行检查,但不要求程序本身在机器上运行。按照评审的不同组 织形式,代码评审又可分为代码会审,走查以及办公桌检查,同行评 分4种。对某个具体的程序,通常只使用一种评审方式。

动态测试是通常意义上的测试,即使用和运行被测软件。动态测试的 对象必须是能够由计算机真正运行的被测试的程序,它包含黑盒测试 和白盒测试,

2、传统方法学中软件生命周期各阶段是如何划分的?(用图形表示) 并简述各阶段主要任

务。

软件生命周期(各阶段)软件生命周期由软件定义、软件开发和运行 维护三个时期组成。

.软件定义时期划分为三个阶段:问题定义、可行性研究和需求分析

2. 开发时期:总体设计、详细设计、编码和单元测试、综合测试。

3维

护时期:主要任务是使软件持久地满足用户的需要生命周期模型规定 了把生命周期划分成哪些阶段及各个阶段的执行顺序,因此,也成为

2、 静态测试指被测程序不在机器上运行,而是采用( 分析)和

(人工检测 )的手段对程序进行测试。

3、 在代码编写完成后的单元测试工作主要分为两个步骤(

)和(动态执行跟踪

4、 因果图能有效地检测输入条件的(

起的错误。因果图的基本原理是通过画( 计算机辅助静态

人工静态检

然语言描述的功能说明转换为 ( 判定表

表的每一列

)设计一个测试用例。

5、 单元测试针对每个程序的模块,主要解决(

局部数据结构

)( 边界条件

)。

各种组合 因果图 ),最后为

)可能会引 ),把用自

判定

模块接口

过程模型

3、软件测试的目标是什么?

从用户的角度出发,普遍希望通过软件测试暴露出软件中陷藏的错误 和缺陷,以考虑是否可以接受该产品。而从软件开发者的角度出发, 则希望测试成为表明软件产品中不存在错误的过程,验证该软件已正 确地实现了用户的要求,确立用户对软件质量的信心。

、综合应用题(共55分)

1、针对以下问题:某一种 8位计算机,其十六进制常数的定义是以 Ox 或 0X 开头的十六进制

整数,其取值范围为- 7f 〜7f (不区分大小写字母),如 0x13、0x6A 、— 0x3c 。请采用等价类划分的方法设计测试用例。

(13分)

8 位=1111 1111 最大

1*2A 7+1*1*2A 6 1*2A 5 ...+1*2A 0 = FF

用例1 : 0x7F ,覆盖等价类(1 ) (4) (6 ) ( 8) 用例2 : -0Xb ,覆盖等价类(1 ) (4 ) (6 ) (8 ) 用例3 : 0X0 ,覆盖等价类(1 ) (4 ) (6 ) ( 8 ) 用例

4 : 0x ,覆盖等价类(1 ) (7 ) 用例

5 : A7 ,覆盖等价类(2 ) 用例

6 : -1A ,覆盖等价类

(3)

用例7 : 0X8h ,覆盖等价类(1 ) (5)

用例8 : 0x80 ,覆盖等价类(1) (4 ) ( 10 ) 用例9 : -0XaB ,覆盖等价类(1 ) (4 ) ( 9)

p1; if c1

2、已知有如下程序段:

beg in

(共 15 分)

the

n

while c2do p2

else p3;

while c3do

beg in p4;

if c4

the n p5

else p6;

end;

p7;

if c5

the n repeat p8 un til c6

else p9;

end

(1)请用程序流程图描述;(7分)

(2)请用N —S图图描述;(8分)

3、使用基本路径测试方法,设计测试下面列出的伪码程序的测试用例( 12分)

Start

1 in put(a,b,c,d)

2 if(a>0)

3 and (b>0)

4 the n x=a+b

5 else x=a-b

6 end

7 if(c>a)

8 or(d

9 the n y=c-d

10 else y=c+d

11 end

12 prin t(x,y)

Stop

解:

确定线性独立路径的基本集合

由于它的环形复杂度为5,因为共有5条独立路径。分别取为:

路径1:1-2-3-4-6-7-9-11-12

路径2:1-2-5-6-7-9-11-12

路径3:1-2-3-5-6-7-9-11-12

路径4:1-2-3-4-6-7-8-9-11-12

路径5:1-2-3-4-6-7-8-10-11-12

①执行路径1 : 1-2-3-4-6-7-9-11-12 (两个判定表达式全为真)

输入:A=1 , B=1 , C=2, D=2 (任意)

预期的输出:X=2, Y=0

②执行路径2:1-2-5-6-7-9-11-12 (第一判定表达式为假,第二个判定式为真)

输入:A=0 , B=1 (任意),C=2, D=0 (任意)

预期的输出:X=-1 , Y=2

③执行路径3:1-2-3-5-6-7-9-11-12 (第一判定表达式为假,第二个判定式为真)

输入:A=1 , B=0, C=2 , D=0 (任意)