您的当前位置:首页正文

软件工程与软件测试技术

2022-06-09 来源:爱站旅游
导读软件工程与软件测试技术
《软件工程与软件测试技术》

课程复习资料

课程名称 教 材 信 息 名称 出版社 作者 版次 软件工程与软件测试技术 软件测试理论与实践教程 人民邮电出版社 张向宏主编 2009.06 注:如学员使用其他版本教材,请参考相关知识点及教师PPT PPT相关章节标记示例“(1.1),(1.4)”

一、客观部分:(单项选择、多项选择、不定项选择、判断) (一)单项选择题

1. 关于原型化开发方法的叙述中,不正确的是()。

A. 原型化方法适应于需求不明确的软件开发 B. 在开发过程中,可以废弃不用早期构造的软件原型 C. 原型化方法利于确认各项系统服务的可用性 D. 原型化方法可以直接开发出最终产品

★考核知识点: 原型开发模型的特点。相关知识参考教材中P8及课件相关内容。(1.1)

2. 以下属于软件维护阶段文档的是()。

A.测试分析报告 B.操作手册 C.软件问题报告 D.软件需求说明

★考核知识点:软件生命周期各阶段的任务,在软件维护的流程中,第一步就是制定维护申请报告,也称为软件问题报告,它是维护阶段的一种文档,由申请维护的用户填写。(1.1)

3. 在软件生命周期的不同阶段,需要实施不同类型的测试工作,单元测试是对程序设计进

行验证,其中()不是单元测试的主要内容。

A. 模块接口测试 B. 有效性测试 C. 路径测试 D. 边界测试

★考核知识点:单元测试的主要内容,有效性测试即确认测试,不属于单元测试。(1.1)

4. 软件测试的目的是()。 A.发现程序中的错误 B. 证明程序中没有错误

C. 测量程序的动态特性 D. 检查程序中的语法错误

★考核知识点:软件测试的目的。(2.1)

5. 对于软件的β测试,下列描述正确的是()。

A.β测试就是在软件公司内部展开的测试,由公司专业的测试人员执行的测试 B.β测试就是在软件公司内部展开的测试,由公司的非专业测试人员执行的测试 C.β测试就是在软件公司外部展开的测试,由专业的测试人员执行的测试 D.β测试就是在软件公司外部展开的测试,可以由非专业的测试人员执行的测试

★考核知识点: β测试的概念,又称用户测试。 (2.1)

6. V模型指出,()对程序设计进行验证 .

A. 验收测试和确认测试 B. 系统测试 C. 单元和集成测试 D. 验证测试

★考核知识点:V模型的概念,单元和集成测试对程序设计进行验证。(2.3)

7. 下面哪个不属于静态测试?()

A. 编码规则检查 B.内存泄漏 C. 程序复杂度分析 D. 程序结构分析

★考核知识点:静态测试的内容,编码规则检查、程序复杂度分析和程序结构分析都属于静态测试,内存泄露属于性能测试检查的范畴,不属于静态测试。 (3.2)

8. 使用白盒测试方法时,确定测试数据应根据()和指定的覆盖标准。

A.程序的内部逻辑 B.程序的复杂结构 C.使用说明书 D.程序的功能

★考核知识点:白盒测试的概念,白盒测试主要根据程序的内部逻辑来设计测试用例。(3.1)

9. 下列测试工具中哪个不能作为性能测试压力工具() A.Quick Test Professional B. Borland SilkPerformer

C. Compware QA Center Performance Edition D. Mercury LoadRunner

★考核知识点:性能测试工具(5.4)

10. 在McCall软件质量度量模型中,属于面向软件产品适应的是().

A.可用性 B.适应性

C.可维护性

D.可互操作性

★考核知识点:McCall质量模型(7.1)

11. 下列关于软件测试的叙述中,正确的是()

A.用黑盒法测试时,测试用例是根据程序内部逻辑设计的 B.测试是为了验证该软件已正确地实现了用户的要求 C.发现错误多的程序模块,残留在模块中的错误也多

D.黑盒测试方法中最有效的是因果图法

★考核知识点:软件测试的基本概念,参考教材13页软件测试的原则的第5条。(1.2)

12. 关于白盒测试与黑盒测试的最主要区别,正确的是()。

A.黑盒测试比白盒测试应用更广泛

B.白盒测试可以使用测试工具,黑盒测试不能使用工具 C.白盒测试需要程序员参与,黑盒测试不需要 D.白盒测试侧重于程序结构,黑盒测试侧重于功能

★考核知识点:黑盒测试和白盒测试的区别。参考教材中16页黑盒测试盒白盒测试的定义。(2.2)

13. 针对下列程序段,对于(A,B)的取值,以下() 测试用例组合能够满足条件覆盖的要

求。

IF(( A - 10 )= 20 AND ( B + 20 )> 10 )THEN C = 0 IF(( A - 30 )< 10 AND ( B - 30 )< 0 )THEN B = 30 ①A=50 B=-10 ②A=40 B=40 A.①④

B.③④

③A=30 B=-10 ④A=30 B=30

D.②④

C.①②

★考核知识点:条件覆盖。(3.3)

14. 用边界值分析法,假定1A.X=1,X=100

B.X=0,X=1,X=100,X=101 C.X=2,X=99 D.X=O,X=101

★考核知识点:黑盒测试,边界值分析,参考教材108页边界值分析的原则。(4.2)

15. 以下各项中,()属于需求说明书的评测内容?

①、系统定义的目标是否与用户的要求一致

②、设计的约束条件或限制条件是否符合实际 ③、是否考虑过软件需求的其他方案

④、软件的行为与它必须处理的信息、必须完成的功能是否一致 A.①、②、③、④ B.①、②、④ C.②、③、④ D. ①、③、④

★考核知识点:对需求说明书的评测应考查系统定义的目标是否与用户的要求一致 、软件的行为与它必须处理的信息、必须完成的功能是否一致、设计

的约束条件或限制条件是否符合实际、是否考虑过软件需求的其他方案 16. 可行性研究要进行一次( )需求分析。

A. 详细的

B. 简化的、压缩的

C. 全面的

D. 彻底的

★考核知识点:可行性分析,可行性研究实质上是要进行一次大大压缩简化了的系统 分析和设计。参考课件中软件生命周期的部分(1.1) 17. 下述说法错误的是( )。

A. 单元测试又称为模块测试,是针对软件测试的最小单位——程序模块进行正确性检验的测试工作;

B. 集成测试是检验程序单元或部件的接口关系,逐步集成为符合概要设计要求的程序部件或整个系统;

C. 集成测试也叫做组装测试,通常在编码完成的基础上,将所有的程序模块进行有序的、递增的测试;

D. 系统测试是在真实或模拟系统运行环境下,检查完整的程序系统能否和相关硬件、外设、网络、系统软件和支持平台等正确配置与连接,并满足用户需求。

★考核知识点:不同测试之间的区别。(2.2) 18. 软件质量的定义是 ()。

A. 软件的功能性、可靠性、易用性、效率、可维护性、可移植性 B. 满足规定用户需求的能力

C. 最大限度达到用户满意

D. 软件特性的总和,以及满足规定和潜在用户需求的能力

★考核知识点:软件质量的定义。(7.1)

19. 从下列关于软件测试的叙述中,选出5条正确的叙述,正确的答案是()。

(1) 对于连锁型分支结构,若有n个判定语句,则有2n条路径。 (2) 尽量用公共过程或子程序去代替重复的代码段。 (3) 测试是为了验证该软件已正确地实现了用户的要求。 (4) 用黑盒法测试时,测试用例是根据程序内部逻辑设计的。 (5) 尽量采用复合的条件测试,以避免嵌套的分支结构。 (6) GOTO语句概念简单,使用方便,在某些情况下,保留GOTO语句反能使写出的程序更加简洁。 (7) 发现错误多的程序模块,残留在模块中的错误也多。 (8) 黑盒测试方法中最有效的是因果图法。 (9) 在做程序的单元测试时,桩(存根)模块比驱动模块容易编写。 (10) 程序效率的提高主要应通过选择高效的算法来实现。

A.(1)(5)(6)(7)(10) B.(4)(5)(6)(7)(10) C.(1)(3)(4)(5)(9) D.(1)(2)(3)(8) (9)

★考核知识点:软件测试的基本知识的综合应用,可以用排除法。 20. 软件测试类型按开发阶段划分是()。

A. 需求测试、单元测试、集成测试、验证测试

B. 单元测试、集成测试、确认测试、系统测试、验收测试 C. 单元测试、集成测试、验证测试、确认测试、验收测试 D. 调试、单元测试、集成测试、用户测试

★考核知识点:软件测试的类型。(2.2)

21. 针对以下程序段,对于变量c的取值,至少需要()个测试用例才能够满足语句覆盖的

要求。

c =((u8_t *)q->payload)[i];switch (c) {

case SLIP_END:

sio_send(SLIP_ESC, netif->state); sio_send(SLIP_ESC_END, netif->state); break; case SLIP_ESC:

sio_send(SLIP_ESC, netif->state); sio_send(SLIP_ESC_ESC, netif->state); break; defult:

sio_send(c, netif->state); break; } A.1

B.2

C.3

D. 4

★考核知识点:逻辑覆盖,可以使用基本路径测试法,程序中有两个判定条件,应该选择2+1个测试用例才能够达到语句覆盖.(3.3)

22. 软件内部/外部质量模型中,以下()不是功能性包括的子特性。

A.适合性

B.准确性

C. 互操作性

D.稳定性

★考核知识点:软件质量模型,适合性、准确性、互操作性、依从性和安全性是功能特性包括的子特性,稳定性是可维护性的子特性(7.1)

23. 针对逻辑覆盖有下列叙述,()是不正确的。

A.达到100%DC要求就一定能够满足100%SC的要求 B.达到100%MCDC要求就一定能够满足100%SC的要求 C.达到100%CDC要求就一定能够满足100%SC的要求 D.达到100%CC要求就一定能够满足100%SC的要求

★考核知识点:逻辑覆盖,参考教材90-92页的逻辑覆盖部分。达到100%条件覆盖未必能够100%满足语句覆盖要求。(3.3)

24. 24-26.对于业务流清晰的系统可以利用 24. ____ 贯穿整个测试用例设计过程,在用

例中综合使用各种测试方法,对于参数配置类的软件,要用__25. ___ 选择较少的组合方式达到最佳效果,如果程序的功能说明中含有输入条件的组合情况,则一开始就可以选用因果图和__26. ______。 24.A.等价类划分 B.因果图法

C.场景法

D. 正交试验法 D.场景法 D.场景法

25.A.边界值分析 B.正交试验法 C.因果图法 26.A.判定表法

B.因果图法

C.等价类划分

★考核知识点:黑盒测试技术的使用策略,参考教材119页。24题中,场景法适合业务清晰的系统;25题中正交实验法适合参数配置类的软件;因果图和判定表法适合程序功能说明中含有输入条件的组合情况.(4.2)

25. 关于第三方测试的描述,正确的观点是() 。

A. 由在技术、管理和财务上与开发方和用户方相对独立的组织进行的测试 B. 既不是开发人员,也不是用户所进行的测试就是第三方测试 C. 第三方测试是在开发方与用户方的测试基础上所进行的验证测试 D. 第三方测试又称为β测试

★考核知识点:第三方测试,即由在技术、管理和财务上与开发方和用户方相对独立的组织进行的测试.(2.2)

26. 以下()不是敏捷方法应具备的基本特征。

A.简单的

B.增量的

C.协作的

D.适应性强的

★考核知识点:敏捷测试的基本特征。增量、协作、直接的、适应性强的是敏捷测试的4个基本特征(8.1)

27. 软件测试的对象包括()。

A. 目标程序和相关文档

B. 源程序、目标程序、数据及相关文档 D. 源程序和目标程序

C. 目标程序、操作系统和平台软件

★考核知识点:软件测试的对象。参考教材中第9页软件测试的定义。软件是由文档数据和程序组成,软件测试的对象也就包括数据、文档和程序,程序包括源程序和目标程序(1.1)

28. 以下方法中()属于白盒技术设计测试用例的方法。

A.逻辑覆盖 B.等价类划分 C.边界值分析 D.因果图

★考核知识点:白盒测试,4个选项中只有逻辑覆盖是白盒测试技术,其他都是黑盒测试方法(3.3)

29. V模型指出,()对系统设计进行验证。

A. 单元测试 B. 集成测试 C. 功能测试 D. 系统测试

★考核知识点:在V模型中,系统测试对系统设计进行验证(2.3)

30. 以下软件测试的说法,()是错误的。

A.需求规格说明、设计规格说明都是软件测试的对象 B.软件测试贯穿于软件定义和开发的整个期间

C.软件测试就是程序测试 D.程序是软件测试的对象

★考核知识点:软件测试的概念,软件测试不仅仅是对程序的测试,还包括对文档和数据的测试,程序只是软件测试的对象之一。(1.2)

31. 以下哪种测试与其余三种测试在分类上不同?()

A. 负载测试 B. 强度测试

C. 数据库容量测试 D. 静态代码走查

★考核知识点:性能测试,负载测试、强度测试盒数据库容量测试都属于性能测试,静态代码走查属于白盒测试(5.2)

32. 用边界值分析法,假定1A.X=1,X=80 C.X=2,X=79

B.X=0,X=1,X=80,X=81 D.X=O,X=81

★考核知识点:边界值分析法(4.2)

33. 关于原型化开发方法的叙述中,不正确的是()。

A. 原型化方法可以直接开发出最终产品 B. 原型化方法适应于需求不明确的软件开发 C. 原型化方法利于确认各项系统服务的可用性 D. 在开发过程中,可以废弃不用早期构造的软件原型

★考核知识点: 原型开发模型的特点。原型是用于明确用户需求的,并非是提交用户的最终产品, 相关知识参考教材中P8及课件相关内容。(1.1) 34. 通过疲劳强度测试,最容易发现()问题。

A. 并发用户数 B.内存泄漏 C.系统安全性 D.功能错误

B. ★考核知识点:考查疲劳强度测试,参考教材146-147页有关疲劳强度测

试的内容。疲劳强度测试最容易发现内存泄露的问题。(5.2)

35. 广义的软件测试包括()。

A.开发方测试、用户测试和第三方测试 B.确认、验证和测试

D.单元测试、集成测试、确认测试和系统测试

★考核知识点:软件测试的定义,广义的测试包括确认和验证,参考教材10页上广义的软件测试的定义(1.1) 36. 软件调试的目的是()。

A. 找出错误所在并改正之 C. 对错误性质进行分类

B. 排除存在错误的可能性 D. 统计出错的次数

★考核知识点:软件调试的目的是找出错误并改正。(1.1)

(二)多项选择题

1. 以下测试方法是白盒测试方法的是()。 A. 判定覆盖和边界值分析法 B. 等价划分和错误推测法

C. 路径覆盖和判定/条件覆盖法 D. 条件组合覆盖和语句覆盖法

E. 条件覆盖和错误推测法

★考核知识点:白盒测试方法, 边界值方法属于黑盒测试方法,但也可以用于白盒测试,但错误推测法不能用于白盒测试。(3.1)

2. 以下属于黑盒测试方法的有()。 A.等价类划分 B. 边界值分析 C. 判定覆盖法 D. 因果图 E. 正交实验法

★考核知识点:黑盒测试方法(4.1) 3. 以下哪些过程能够提高软件质量?()

A. 可行性分析 B. 需求评审 C. 测试

D. 代码走查 E. 概要设计

★考核知识点:静态测试(3.2)

4. 下列属于软件缺陷问题的是 () A. 点击某链接返回HTTP错误 B. 新增某条信息记录后没有提示保存成功 C. 登录系统时输入错误密码,提示用户名不正确 D. 上传文件时提示服务器空间已满,无法上传

★考核知识点:软件缺陷(2.1)

5. 可行性研究的方面包括()。

A. 经济可行性 B.技术可行性 C.法律可行性 D. 抉择 E. 软件的规模

★考核知识点:可行性研究,包括从技术、经济和法律上的可行性研究,参考第8页软件生命周期(1.1)

6. 下列属于测试执行阶段的输入的是()。 A. 软件测试计划

B. 测试用例

C. 测试数据

D. 测试环境描述

★考核知识点:测试阶段的输入,测试阶段的输入应该包括软件测试计划和

测试用例(2.1)

7. 下列软件测试工具中哪些适用于自动化功能测试()

A.Mercury QuickTest Professional B. Mercury WinRunner

C. Compuware Application Vantage D. Borland SilkTest E. Compuware Test Partner

★考核知识点:自动化测试工具(4.4) 8. 下列关于alpha 测试的描述中正确的是()。

A.alpha 测试需要用户代表参加 B.alpha 测试不需要用户代表参加 C.alpha 测试是系统测试的一种 D.alpha 测试是验收测试的一种

★考核知识点:alpha测试;Alpha测试是在开发环境下进行,但通常有用户

代表参加,属于验收测试的一种。(2.2)

9. 软件开发模型有 ()。

A. 瀑布模型 B.增量模型 C. W模型 D. 螺旋模型 E. 原型模型

★考核知识点:软件开发模型。(1.1)

10. 下列哪些属于软件测试阶段的交付成果物 ( )

A. 测试计划 B. 测试用例 C. 测试报告 D. 用户手册 E. 安装部署手册

★考核知识点:测试阶段的交付成果,用户手册和安装部署手册不属于测试阶段的交付物.

二、主观部分: (一) 名词解释

1. 软件工程:

2. 黑盒测试:(参考教材第16页)(1.2) 3. 静态测试:(参考教材第63页)(3.1)

4. 系统吞吐量:(参考教材第144页)(5.1) 5. 软件质量:(2.1) 6. 白盒测试:(参考教材第16页)(1.2) 7. 动态测试:(参考教材第63页)(3.1) 8. 响应时间:(参考教材第143页)(5.1) 9. 软件度量:(参考教材第34页)(2.1) 10. 软件生命周期:(参考教材第8页)(1.1) 11. 单元测试:(参考教材第14页)(1.2) 12. 逻辑覆盖:(参考教材第88页)(3.3) 13. 负载测试:(参考教材第146页)(5.2)

14. 测试驱动开发(TDD):(参考教材第205页)(8.2) 15. 软件测试:(参考教材第10页)(1.1) 16. 多条件覆盖:(参考教材第92页)(3.3) 17. 集成测试:(参考教材第14页)(1.2) 18. 错误推测法:(参考教材第119页)(4.2) 19. 敏捷测试:(参考教材第201页)(8.1) 20. 软件:

21. 系统测试:(参考教材第15页)(1.2) 22. 桌面检查:(参考教材第69页)(3.2) 23. 因果图法:(参考教材第110页)(4.2) 24. 压力测试:(参考教材第146页)(5.2) 25. 软件过程模型:(1.1)

26. 用户测试:(参考教材第16页)(1.2) 27. 走查:(参考教材第70页)(3.2) 28. 场景法:(参考教材第108页)(4.2) 29. 大数据量测试:(参考教材第146页)(5.2) 30. 软件危机:(1.1)

31. 验收测试:(参考教材第15页)(1.2) 32. 代码审查:(参考教材第69页)(3.2) 33. 等价类划分法:(参考教材第105页)(4.2) 34. 并发用户数:(参考教材第144页)(5.1) 35. 开发方测试:(参考教材第15页)(1.2) 36. W模型:

(参考教材第23页)(1.3)

37. 静态结构分析:(参考教材第81页)(3.2)

38. 随机测试:(参考教材第118页)(4.2) 39. 疲劳强度测试:(参考教材第146页)(5.2) 40. 灰盒测试:(参考教材第17页)(1.2) 41. 前置测试模型:(参考教材第26页)(1.3) 42. 正交实验法:(参考教材第112页)(4.2) 43. 软件性能测试:(参考教材第141页)(5.1) 44. 基本路径测试法:(参考教材第93页)(3.3)

(二) 问答题

1.软件生命周期都包括哪些阶段,简述每个阶段的任务。

★考核知识点:软件生命周期(2.1)

参考答案:软件生命周期包括问题的定义,可行性分析,需求分析,概要设计,详细设计,编码,测试,维护8个阶段。

问题定义阶段必须回答的关键问题是:“要解决的问题是什么?” 可行性研究阶段要回答的关键问题是:“对于上一个阶段所确定的问题有行得通的解决办法吗?”

需求分析阶段的任务是准确地确定“为了解决这个问题,目标系统必须做什么”,主要是确定目标系统必须具备哪些功能。

概要设计阶段必须回答的关键问题是:“概括地说,应该怎样实现目标系统?”

详细设计阶段将详细地设计每个模块,确定实现模块功能所需要的算法和数据结构。 编码阶段关键任务是写出正确的容易理解、容易维护的程序模块。

测试阶段的关键任务是通过各种类型的测试(及相应的调试)使软件达到预定的要求。 维护阶段的关键任务是,通过各种必要的维护活动使系统持久地满足用户的需要。

2.简述快速原型模型的特点、优点、缺点、适用场合。

★考核知识点:快速原型模型,参考课程课件(1.1)

参考答案:所谓快速原型是快速建立起来的可以在计算机上运行的程序,它所能完成的功能往往是最终产品能完成的功能的一个子集。 快速原型模型主要优点:(1) 原型系统已经通过与用户交互而得到验证,据此产生的规格说明文档正确地描述了用户需求,因此,在开发过程的后续阶段不会因为发现了规格说明文档的错误而进行较大的返工。(2) 开发人员通过建立原型系统已经学到了许多东西,因此在设计和编码阶段发生错误的可能性也比较小,这自然减少了在后续阶段需要改正前面阶段所犯错误的可能性。 缺点:1)用户有时误解了原型的角色,例如他们可能误解原型应该和真实系统一样可靠。2)缺少项目标准,进化原型方法有点像编码修正。3)缺少控制,由于用户可能不断提出新要求,因而原型迭代的周期很难控制。4)额外的花费:研究结果表明构造一个原型可能需要10%额外花费。5)原型法要求开发者与用户密切接触,有时这是不可能的。例如外包软件。 适用场合:1)适用于用户驱动的系统,即需求模糊或随时间变化的系统;2)已有产品或产品的原型,只需客户化的工程项目;3)简单而熟悉的行业或领域;4)有快速原型开发工具;5)进行产品移植或升级

3.什么是V模型?简述V模型在软件测试过程中的作用,以及在V模型中各个测试阶段和

开发过程的对应关系。

★考核知识点:V模型(2.3)

参考答案:

• V模型是软件开发瀑布模型的变种,它反映了测试活动与分析和设计的关系 。 • 从左到右,描述了基本的开发过程和测试行为,非常明确地标明了测试过程中存在

的不同级别,并且清楚地描述了这些测试阶段和开发过程期间各阶段的对应关系 。 • 左边依次下降的是开发过程各阶段,与此相对应的是右边依次上升的部分,即各测

试过程的各个阶段。

• V模型的局限性在于没有明确地说明早期的测试,无法体现“尽早地和不断地进行软

件测试”的原则

4. 请说明软件工程方法学都包含哪些要素?简要说明目前使用最广泛的两种软件工程方

法学。

★考核知识点:软件工程方法学(1.1)

参考答案:软件工程方法学包含3个要素:方法、工具和过程。其中方法是完成软件开发的各项任务的技术方法,回答“怎样做”的问题;工具是为运用方法而提供的自动的或半自动的软件工程支撑环境;过程是为了获得高质量的软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤。

目前使用得最广泛的软件工程方法学,分别是传统方法学和面向对象方法学。 传统方法学也称为生命周期方法学或结构化范型。它采用结构化技术(结构化分析、结构化设计和结构化实现)来完成软件开发的各项任务,并使用适当的软件工具或软件工程环境来支持结构化技术的运用。这种方法学把软件生命周期的全过程依次划分为若干个阶段,然后顺序地完成每个阶段的任务。

与传统方法相反,面向对象方法把数据和行为看成同等重要,它是一种以数据为主线,把数据和对数据的操作紧密地结合起来的方法。

5. NextDate函数包含三个变量:month、day和year,函数的输出为输入日期后一天的日

期。 例如,输入为2008年8月7日,则函数的输出为 2008年8月8日。请用边界值分析法设计测试用例。

★考核知识点:边界值分析方法的应用(4.2)

参考答案:在NextDate函数中,隐含规定了变量mouth和变量day的取值范围为1≤mouth≤12和1≤day≤31,并设定变量year的取值范围为1912≤year≤2050 。 则测试用例选择如下:

6.什么是W模型?请详细论述其特点。

★考核知识点:软件测试模型(2.3)

参考答案:W模型由Evolutif公司提出,相对于V模型,W模型增加了软件各开发阶段中应同步进行的验证和确认活动。W模型由两个V字型模型组成,分别代表测试与开发过程,图中明确表示出了测试与开发的并行关系。W模型强调:测试伴随着整个软件开

发周期,而且测试的对象不仅仅是程序,需求、设计等同样要测试,也就是说,测试与开发是同步进行的。

W模型有利于尽早地全面的发现问题。例如,需求分析完成后,测试人员就应该参与到对需求的验证和确认活动中,以尽早地找出缺陷所在。同时,对需求的测试也有利于及时了解项目难度和测试风险,及早制定应对措施,这将显著减少总体测试时间,加快项目进度。

但W模型也存在局限性。在W模型中,需求、设计、编码等活动被视为串行的,同时,测试和开发活动也保持着一种线性的前后关系,上一阶段完全结束,才可正式开始下一个阶段工作。这样就无法支持迭代的开发模型。对于当前软件开发复杂多变的情况,W模型并不能解除测试管理面临着困惑。

7.什么是逻辑覆盖测试?逻辑覆盖都有哪些类型?

★考核知识点:逻辑覆盖测试, (3.3)

参考答案:逻辑覆盖是通过对程序逻辑结构的遍历实现程序的覆盖。它是一系列测试过程的总称,这组测试过程逐渐进行越来越完整的通路测试。 从覆盖源程序语句的详尽程度分析,逻辑覆盖标准包括:  语句覆盖  判定覆盖  条件覆盖

 条件判定组合覆盖  多条件覆盖

 修正条件判定覆盖

8. 加法器程序计算两个1~100之间整数的和。请用边界值分析法设计测试用例

★考核知识点:边界值分析的应用(4.2)

参考答案:1.等价类划分

9. 请说明测试的目的、原则与对象

★考核知识点:软件测试的目的、原则和对象(2.1)

参考答案:软件测试的目的: 1)是以最少的人力、物力和时间找出软件中潜在的各种错误和缺陷,通过修正各种错误和缺陷提高软件质量,回避软件发布后由于潜在的软件缺陷和错误造成的隐患所带来的商业风险。

2)是确认软件的质量,软件做了所期望的事情(Do the right thing),另一方面是确认软件以正确的方式来做了这个事件(Do it right) 3)是为开发过程提供反馈信息,协助开发过程的改进:软件测试不仅是在测试软件产品本身,还包括软件开发的过程。软件测试的第三个目的是保证整个软件开发过程的高质量。

4)软件质量评估:软件测试是以评价一个程序或系统属性为目标的一种活动,是对软件质量的度量与评估,以验证软件的质量满足用户的需求,为用户选择与接收软件提供有力的依据。

软件测试的原则

1) 所有的软件测试都应追溯到用户需求

2) 应当把“尽早地和不断地进行软件测试”作为软件开发者的座右铭。

3) 完全测试是不可能的,测试需要终止 4) 软件测试无法显示软件潜在的缺陷 5) 充分注意软件测试中的群集现象 6) 程序员应避免检查自己的程序 7) 尽量避免测试的随意性

8) 妥善保存一切测试过程文档。

软件测试的对象:需求规格说明、概要设计规格说明、详细设计规格说明、源程序 。

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