您的当前位置:首页正文

软件测试练习题及答案

来源:华佗健康网
练习题

、判断

(01)测试是为了验证软件已正确地实现了用户的要求。错

(02)白盒测试仅与程序的内部结构有关,完全可以不考虑程序的功能要求。对 (03)白盒测试不仅与程序的内部结构有关,还要考虑程序的功能要求。错 (04)程序员兼任测试员可以提高工作效率。错

(05)黑盒测试的测试用例是根据应用程序的功能需求设计的。对 (06)当软件代码开发结束时,软件测试过程才开始。错

(07)据有关数据统计,代码中60%以上的缺陷可以通过代码审查发现出来。对 (08)无效等价类是无效的输入数据构成的集合,因此无需考虑无效的等价类划分。错 (09)软件本地化就是将一个软件产品按特定国家或语言市场的需要翻译过来。错 (10)在压力测试中通常采用的是黑盒测试方法。对 (11)软件测试员无法对产品说明书进行白盒测试。对 (12)功能测试工具主要适合于回归测试。对

(13)测试人员说:“没有可运行的程序,我无法进行测试工作”。错 (14)自底向上集成需要测试员编写驱动程序。对 (15)测试是可以穷尽的。错

(16)自动化测试相比手工测试而言,能发现更多的错误。错 (17)软件测试自动化可以提高测试效率,可以代替手工测试。错

(18)语句覆盖法的基本思想是设计若干测试用例,运行被测程序,使程序中的每个可执行

语句至少被执行一次。对

(19)Beta测试是验收测试的一种。对

(20)软件开发全过程的测试工作都可以实现自动化。错

(21)软件只要经过严格严谨的内部测试之后,可以做到没有缺陷。错 (22)结构性测试是根据软件的规格说明来设计测试用例。错 (23)软件测试工具可以代替软件测试员。错 (24)通过软件测试,可以证明程序的正确性。错

(25)在单元测试中,驱动程序模拟被测模块工作过程中所调用的下层模块。错 (26)软件缺陷可能会被修复,可能会被保留或者标识出来。对

(27)测试用例是由测试输入数据和对应的实际输出结果这两部分组成。错 (28)单元测试通常由开发人员进行。对

(29)现在人们普遍认为软件测试不应该贯穿整个软件生命周期,而应在编程完毕之后再进

行,这样可以降低成本。错

(30)文档的错误不是软件缺陷。错

(31)Junit只是单元测试工具,并不能进行现回归测试。错 (32)判定表法是一种白盒测试方法。错 (33)白盒测试不考虑程序内部结构。错

(34)在单元测试中,桩程序模拟被测模块工作过程中所调用的下层模块。对 (35)在测试中发现缺陷多的地方,还有更多的缺陷将会被发现。对 (36)测试用例越多,测试效果就会越好。错

(37)在实际的软件项目测试中,穷举测试是不可能的。对 (38)因果图法是一种白盒测试方法。错

(39)完成了代码的编写才能开始进行测试活动。错

(40)白盒法设计测试用例更详细,更完全,所以在有充足时间的时候,没有必要采用黑盒

测试法。错

(41)经过Alpha测试和修正的软件产品称为Beta版本。对

(42)软件单元的缺陷可以在集成测试阶段发生并修复,所以没有必要进行单元测试。错 (43)测试和调试没有区别。错

(44)具体的测试用例最好放在测试计划文档中。错 (45)单元测试和集成测试紧密相关,几乎同步进行。对

(46)软件国际化是通过特定的系统设计、程序设计、编码方法来实现的。对 (47)代码走查和和会议审查都属于静态测试,代码走查比会议审查更正式。错 (48)软件测试能保证软件质量。错

(49)性能测试中的最佳并发用户数与最大并发用户数通常是相同的。错 (50)软件测试人员都可以不用具备开发技术。错 (51)软件开发人员的水平肯定比测试人员水平高。错 (52)代码审查工作属于静态测试。对

(53)软件测试是有效的排除软件缺陷的手段。对 (54)产品规格说明书和文档的谬误不属于软件缺陷。错

(55)功能测试通常采用的是黑盒测试方法,而性能测试通常采用的是白盒测试方法。错 (56)软件开发全过程的测试工作都可以实现自动化。错

(57)只要能够达到100%的逻辑覆盖率,就可以保证程序的正确性。错 (58)自动化测试相比手工测试而言,能发现更多的错误。错 (59)软件缺陷主要是由于编码问题造成。错

(60) Beta测试是指公司外部的典型用户试用,并要求用户报告异常情况、提出批评意见。

(61)软件测试员可以对产品说明书进行白盒测试。错 (62)JUnihCheckStyle与FindBug都是单元测试工具。对 (63)不存在质量很高但可靠性很差的产品。对 (64)系统测试不包括性能测试。错

(65)为了快速完成集成测试,采用一次性集成方式是适宜的。错 (66)在测试中发现缺陷多的地方,还有更多的缺陷将会被发现。对 (67)静态测试只能发现简单的语法错误,效率低,耗费时间。错

(68)在软件开发过程中,若能推迟暴露其中的错误,则为修复和改进错误所花费的代价就

会降低。错

(69)向后兼容是指可以使用未来版本的软件。二、选择 1、软件测试的目的是(b) A)避免软件开发中出现的错误 B)发现软件开发中出现的错误

C)尽可能发现并排除软件中潜藏的错误,提高软件的可靠性 D)修改软件中出现的错误

2、下列软件属性中,软件产品首要满足的应该是(b)

A)性能需求B)功能需求C)可扩展性和灵活性D)容错纠错能力

3、坚持在软件的各个阶段实施下列哪种质量保障措施,才能在开发过程中尽早发现和预防错误,把

出现的错误克服在早期(a)。

A)技术评审B)程序测试C)改正程序错误D)管理评审 4、为了提高测试的效率,正确的做法是(a)。 A)选择发现错误可能性大的数据作为测试用例 B)在完成程序的编码之后再制定软件的测试计划 C)随机选取测试用例

D)使用测试用例测试是为了检查程序是否做了应该做的事 5、大多数实际情况下,性能测试的实现方法是(a)。 A)黑盒测试B)可靠性测试 C)白盒测试D)静态分析

6、对程序的测试最好由谁来做,对程序的调试最好由谁来做( A)程序员 第三方测试机构 B)第三方测试机构 程序员 C)程序开发组

程序员 程序开发组

7、软件生存周期过程中,修改错误最大的阶段是(a )。

A)发布运行阶段

B)设计阶段C)编程阶段

D)需求阶段 8、在边界值分析中,下列数据通常不用来做数据测试的是( b)。

A)正好等于边界的值 B)等价类中的等价值 C)刚刚大于边界的值 D)刚刚小于边界的值

D)程序开发组

A)因果图B)逻辑覆盖C)循环覆盖 D)基本路径测试

9、用黑盒技术设计测试用例的方法之一为(a)

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

A、白盒测试侧重于程序结构,黑盒测试侧重于功能

B、白盒测试可以使用测试工具,黑盒测试不能使用工具 C、白盒测试需要程序参与,黑盒测试不需要 D、黑盒测试比白盒测试应用更广泛 11、在进行单元测试时,常用的方法是(c)

A)采用白盒测试,辅之以黑盒测试B)采用黑盒测试,辅之以白盒测试 C)只使用白盒测试D)只使用黑盒测试

D)在程序完成的编码之后再制定软件的测试用例

12、通常可分为白盒测试和黑盒测试。白盒测试是根据程序的(d)来设计测试用例,黑盒测试是根据

软件的需求规格说明来设计测试用例。

A)功能B)性能C)内部数据D)内部逻辑

13、经验表明,在程序测试中,某模块与其他模块相比,若该模块已发现并改正的错误较多,则该模块

中残存的错误数目与其他模块相比,通常应该(d)。

A)相似B)较少 C)不确定D)较多

14、如果一个判定中的复合条件表达式为(A>1)or(B<=3),则为了达到100%的条件覆

盖率,至少需要设计多少个测试用例(d)。

A)1B)4C)3D)2

15、以下哪个是功能测试工具(a) A) SeleniumB)LoadRuner C)JMeterD)WebGoat

16、增量式集成测试有3种方式:自顶向下增量测试方法,(b)和混合增量测试方式。 A、自中向下增量测试方法B、自底向上增量测试方法 C、多次性测试D、维护

17、下面有关软件缺陷的说法中错误的是(c)。 A)缺陷就是软件产品在开发中存在的错误

B)缺陷就是软件维护过程中存在的错误、毛病等各种问题 C)缺陷就是导致系统程序崩溃的错误

D)缺陷就是系统所需要实现某种功能的实效和违背 18、单元测试一般以(a)为主。 A)白盒测试B)分析测试 C)系统测试D)黑盒测试

19、在某大学学籍管理信息系统中,假设学生年龄的输入范围为16—40,则根据黑盒测试

中的等价类划分技术,下面划分正确的是(b)。

A)可划分为2个有效等价类,2个无效等价类 B)可划分为1个有效等价类,2个无效等价类

C)可划分为2个有效等价类,1个无效等价类 D)可划分为1个有效等价类,1个无效等价类

20、软件生存周期过程中,修改错误代价最大的阶段是(a)。 A)发布运行阶段B)设计阶段 C)编程阶段D)需求阶段

21、根据软件需求规格说明书,在开发环境下对已经集成的软件系统进行的测试是(a)。

A)系统测试B)单元测试C)集成测试D)验收测试 22、以下那一种选项不属于软件缺陷(b)。 A)软件没有实现产品规格说明所要求的功能

B)软件实现了产品规格说明所要求的功能但因受性能限制而未考虑可移植性问题 C)软件实现了产品规格没有提到的功能

D)软件中出现了产品规格说明不应该出现的功能 23、下面有关测试原则的说法正确的是(a)。

A)测试用例应由测试的输入数据和预期的输出结果组成 B)测试用例只需选取合理的输入数据 C)程序最好由编写该程序的程序员自己来测试

D)使用测试用例进行测试是为了检查程序是否做了它该做的事

24、集成测试对系统内部的交互以及集成后系统功能检验了何种质量特性a

A)正确性B)可靠性C)可使用性D)可维护性 25、以下有关回归测试的说法中错误的是(b)。

A、严格来说,回归测试不是一个测试阶段,只是一种可以用于各个测试阶段的测试技术 B、回归测试适合采用手工方法完成,不适合使用自动化测试工具来完成 C、回归测试可以在系统和验收测试环境下进行

D、回归测试的目标是保证被测应用在被修改或扩充后,各项功能依然正确 26、I18n的含义是(c)。 A)场所B)本地化 C)国际化D)全球化

27、下列关于测试方法的叙述中不正确的是(c)

A)从某种角度上讲,白盒测试与黑盒测试都属于动态测试 B)

C)对功能的测试通常是要考虑程序的内部结构 D)结构测试属于白盒测试 28、在覆准则中,最常用的是(d)

A)语句覆盖 B)条件覆盖 C)分支覆盖 D)以上全部

29、单元测试中设计测试用例的依据是(c)。 A)项目计划说明书B)需求规格说明书

C)详细设计规格说明书D)概要设计规格说明书 30、下列方法中,不属于黑盒测试的是(a)。

A)基本路径测试法B)等价类测试法 C)边界值分析法D)基于场景的测试方法 31、软件测试是按照特定的规程,(a)的过程。 A)发现软件错误B)设计并运行测试用例 C)证明程序没有错误D)说明程序正确

32、测试程序时,不可能遍历所有可能的输入数据,而只能是选择一个子集进行测试,那么

最好的选择方法是(b)。

A)随机选择B)划分等价类

C)根据接口进行选择D)根据数据大小进行选择 33、在黑盒测试中,着重检查输入条件组合的方法是(b) A、等价类划分法B、判定表方法 C、错误推测法D、边界值分析法

34、验收测试的测试用例主要根据(c)的结果来设计。 A、概要设计B、源程序 C、需求分析D、详细设计

35、在下面所列举中的逻辑测试覆盖中,测试覆盖最强的是(a)。 A)条件组合覆盖B)条件覆盖 C)判定覆盖D)语句覆盖

36、数据流覆盖关注的是程序中某个变量从其声明、赋值到引用的变化情况,它是下列哪一

种覆盖的变种(d)。

A)语句覆盖B)控制覆盖C)分支覆盖D)路径覆盖

37、在测试过程中,测试用例的状态是唯一的,一般是三种状态之一,这三种状态不包括下

列哪个(d)

A)通过B)未通过C)未进行测试D)已测试

38、在Web应用软件的分层测试策略中,下列哪个不是测试关注的层次(c)。

A)数据层B)业务层C)服务层D)表示层

39、软件测试规范规定,软件测试的类别可分为:单元测试、集成测试以及(d)。

A)系统测试B)验收测试

C)系统测试和验收测试 40、不属于白盒测试的技术是(c) A、路径覆盖B、判定覆盖 C、边界值分析法H条件覆盖

D)配置项测试、系统测试和验收测试

41、以下关于白盒测试的描述,正确的是(d):

A白盒测试可以考虑,也可以不考虑程序内部结构。

B)白盒测试主要在项目验收阶段采用。 C)边界值分析是白盒测试经常采用的测试技术。 D)白盒测试是基于覆盖的测试。

42、以程序的内部结构为基础的测试用例技术属于(d)。 A)黑盒测试B)灰盒测试 C)数据测试D)白盒测试

43、软件测试的分类方式有多种,其中可用性测试是按测试(b)划分的测试中的一种。

A)方法B)目标

C)对象或阶段D)以上都不是 44、必须要求用户参与的测试阶段是(c)。 A)系统测试B)集成测试

C)验收测试D)单元测试45、软件设计阶段的测试主要采取的方式是(d)。 A)白盒测试B)动态测试 C)黑盒测试D)评审

46、有效等价类和无效等价类是(d)中涉及的概念。

A)白盒测试B)性能测试 C)边界值分析D)等价类划分 47、测试驱动开发的简称是(c)。 A、ADDB、TTD

C、TDDD、TDT48、以下哪个是商业性能测试工具(d) A)WebGoat C)JMeter

B)Selenium D)LoadRuner

(d)、构建阶段和产品化阶

段。

49、IBM统一过程的4个阶段为先启阶段、

A)规划阶段 C)设计阶段

50、以下关于单元测试的描述不正确的是(

B)分析阶段 D)精化阶段

A)单元测试是对软件基本组成单元进行的测试。 B)单元测试常采用白盒测试技术。

C)单元测试是对软件测试按对象或阶段划分中的一种测试。 D)单元测试一般在项目收尾阶段进行。 51、代码评审的2种形式为(c)和正式会议审查。

A)静态审查B)动态审查 C)代码走查D)交叉审查

52、以下不属于黑盒测试技术的是(c):

A)等价类划分 B)边界值分析

C)条件组合覆盖

D)交叉审查

53、关于回归测试,下列哪项描述是错误的( A、回归测试一般适合自动化测试

b)。

B、再测试全部用例是最好的回归测试策略 C、回归测试是为了发现回归缺陷而进行的测试 D、功能测试工具主要适合回归测试

54、在等价类划分中,如果程序输入条件为小于有效等价类,(d)个无效等价类。

30,或大于70的整数,我们可以确定()个A1;2

C) 2;2

8) 1;3 55、不属于黑盒测试的技术是(d)

D)

2;1

A、边界值分析法

C、判定表方法

B、等价类划分法 D、语句覆盖

56、一个成功的测试是(a)。

A)发现了至今尚未发现的错误B)证明发现不了错误 C)没有发现错误码D)发现错误码

57、在边界值分析法中,下列数据通常不用来做测试数据的是(b)。 A、刚刚大于边界的值B、等价类中的等价值 C、刚刚小于边界的值D、正好等于边界的值 58、以下符号中,因果图法中不使用的符号为(d):

A)AB)V C)sD)U

59、单元测试中用以模拟被测模块工作过程中所调用的下层模块的是(a)。 A)桩模块B)子模块 C)驱动模块D)父模块

60、在软件产品完成了系统测试之后、产品发布之前所进行的测试是(b)。A)单元测试B)验收测试 C)集成测试D)功能测试

61、按方法划分,我们可以将软件测试方法划分为(d):

A)动态测试和静态测试。 B)性能测试和压力测试。

C)单元测试、集成测试、系统测试和验收测试 D)白盒测试和黑盒测试。

62、下列项目中不属于测试文档的是(c)。 A、测试计划B、测试用例C程序流程图H测试报告 63、以下关于软件测试自动化的描述,正确的是(c):

A)从软件测试自动化技术来看,工具比人更重要。

B)经验表明,软件测试中发现的错误,绝大部分都是工具发现的。

C)在软件测试过程中,工具只起辅助作用,起关键作用的还是测试人员。 D)以上都不对。

64、单元测试中用来模拟被测模块调用者的模块是( A)驱动模块B)桩模块

C)主控模块D)真实的被调用模块

65、L10n的含义是(c)。A)国际化B)场所 C)本地化D)全球化

66、集成测试计划应该在(b)阶段末提交。 A)需求分析B)概要设计 C、详细设计D)单元测试完成

67、软件测试是采用(a)执行软件的活动。 A)测试用例 B)输入数据 C)测试环境 D)输入条件

68、若一个通讯簿最多可以输入100条记录,则下列选项中设计的测试用例最优的是(a)。 A、分别输入0、1、50、99、100、101条记录 B、分别输入0、1、99、100、101条记录 C、分别输入1、50、100条记录

D、分别输入0、1、50、99、100条记录69、导致软件缺陷的最大原因是:(a) A)软件需求说明书 B)设计方案 C)编码 D)维护

70、在下列描述中,关于测试与调试的说法错误的是(d) A)测试是显示错误的行为;而调试是推理的过程; B)测试显示开发人员的错误。调试是开发人员为自己辩护; C)测试能预期和可控。调试需要想象、经验和思考;

D)测试必须在详细设计已经完成的情况下才能开始;没有详细设计的信息调试不可能进行。 71、某次程序调试没有出现预计的结果,下列(b)不可能是导致出错的原因。 A)变量没有初始化B)编写的语句书写格式不规范 C)循环控制出错D)代码输入有误 72、软件缺陷修复的代价最高的阶段为(a) A)发布阶段B)需求阶段 C)设计阶段D)编码阶段

73、在软件生命周期的哪一个阶段,软件缺陷修复费用最低(b)。 A、编码B、需求分析 C、设计D、产品发布

74、设计若干用例,运行被测程序,使得程序中每个判断的取真分支和取假分支至少经历一 次的测试方法是(b) A、语句覆盖B、判定覆盖 C、条件覆盖D、路径覆盖

75、不属于逻辑覆盖方法的是(d)。 A)组合覆盖B)判定覆盖 C)条件覆盖D)接口覆盖

76、在边界值分析法中,下列数据通常不用来做测试数据的是(b)。 A)刚刚大于边界的值B、等价类中的等价值 C)刚刚小于边界的彳tD)正好等于边界的值

77、(d)是选择若干个测试用例,运行被测程序,使得程序中的每个可执行语句至少

执行一次。

A)条件覆盖B)组合覆盖 C)判定覆盖D)语句覆盖

78、按照测试组织划分,软件测试可分为:开发方测试,第三方测试,(b)。 A、集成测试B、用户测试 C、灰盒测试D、确认测试

79、以下关于静态测试技术和动态测试技术的描述,正确的是(d)。 A)静态测试技术多在项目验收阶段使用B)PMD属于动态测试工具 C)Fingbugs属于动态测试工具D)CheckStyle属于静态测试工具

80、(a)是设计足够多的测试用例,使得程序中每个判定包含的每个条件的所有情况

(真/假)至少出现一次,并且每个判定本身的判定结果(真/假)也至少出现一次。

A)判定-条件覆盖B)组合覆盖 C)判定覆盖D)条件覆盖

81、功能测试主要根据(d)来设计测试用例。 A、维护手册B、设计文档

C、程序的内部逻辑D、需求规格说明书

82、软件测试是软件质量保证的重要手段,下述哪种测试是软件测试的最基础环节(b) A)功能测试 B)单元测试 C)结构测试 D)验收测试

83、以下哪个测试方法不是基于组合及其优化的测试方法(a)。 A)等价类划分法B)Pair-wise方法 C)判定表方法D)正交实验法

84、划分软件测试属于白盒测试还是黑盒测试的依据是(c)。 A)运行结果是否确定B)是否能看到软件设计文档

C)是否能看到被测源程序D)是否执行程序代码

三、填空

1、软件测试的成效需要良好的软件测试环境,对于软件测试环境,我们可以细分出5个要

素,分别为:软件、硬件、网络环境、数据准备和测试工具。

2、在软件本地化过程中,数据格式是其中的一个方面,主要包括数字、时巫货币、日期—格式、度量衡单位、索引与排序、姓名格式以及复数等。

3、脚本是一组测试工具执行的指令集合,也是计算机程序的一种形式。在软件自动化中,

脚本技术至关重要,脚本类型也有许多种,其中常见的有线性脚本、结构化脚本、数据驱动脚本和关键字驱动脚本。

4、在ANSI/IEEE829-1983标准中,列出了和测试设计相关的测试用例编写规范和模板。标准模板中的

主要元素有标识符、测试项、测试环境要求、输入标准、输出标准以及测试用例间的关联。

5、性能测试中系统行为的性能指标很多,常见的有以下几个:请求响应时间、事务响应时

处数据吞吐量。

6、软件测试分为静态测试和动态测试的依据是测试过程中被测软件是否被执行。 7、规格说明书是软件缺陷出现最多的地方。

8、软件缺陷的详细描述,由三部分组成:步骤、期望结果、实际结果。 9、测试用例是为了实现测试有效性的一种最基本的手段。

10、测试成熟度模型TMM基于CMM和业界最佳实践提出,它将测试过程成熟度划分为5

个等级,分别为初始级、定义级、集成、管理和度量以及优化。

11、测试套件是根据特定的测试目标和任务而构造的某个测试用例的集合。 12、本地化测试的技术问题主要包括:数据格式、页面显示和布局、配置和兼容性

问题。

13、黑盒测试方法也称为功能测试或数据驱动测试。

14、随着Internet的普及,网上购物、网上交易、电子银行等新的交易方式走进人们的生活,网络安全变得越来越重要。在Web的安全性测试中,通常需要考虑数据加密、登录或身份

验证、输入验证、SQL注入、超时限制、目录以及操作痕迹等。

15、静态测试技术是单元测试中最重要的手段之一,采用工具扫描分析、代码评审等方 16、软件测试是由“验证(verification)”和有效性确认活动构成的整体。 17、一个基本的软件缺陷生命周期包含三个状态:新打开的、已修正和已关闭。 18、跨站点攻击XSS可以让攻击者在页面访问者的浏览器中执行JavaScript脚本,按注入的

途径,一般可分为三种,反射型XSS基于DOM的XSS以及存储型XSS

19、软件测试中的Mock指的是模型,模拟测试时所需的对象及测试数据。

20、ALAC测试方法是一种基于客户使用产品的知识开发出来的测试方法,它的出发点

是着名的Pareto80/20规律。

21、软件缺陷按测试开发阶段分为需求缺陷缺陷、设计缺陷和编码缺陷。

22、软件测试按测试层次可划分为单元测试、集成测试、确认测试、系统测试、验收测试。 23、基于图的覆盖准则分为结构化覆盖准则和数据流覆盖准则。

24、在整个测试期间收集当前所有打开的(激活的)缺陷数(NumberofOpenBug,NOB),也可以将严重级别的缺陷分离出来进行控制,从而形成NOB曲线,它在一定程度上反映了

软件质量和测试进度随时间的发展趋势。

25、集成测试基本可以概括为两种模式:―非渐增式测试模式、渐增式测试模式。 26、等价类测试法将数据划分为有效等价类和无效等价类。 27、单元测试的对象是类或函数。 28、数据库服务器性能测试主要从两个方面考虑,一是大数据量测试、另一个是大容 量数据测试。

29、Selenium是Web功能测试工具。JMeter和LoadRunner是性能工具。

根据程序是否运行,测试可以分为静态测试和动态测试。

30、基于风险的测试是指评估测试的优先级,先进行高优先级的测试,如果时间或精

力不够,低优先级的测试可以暂时不做。

31、在测试过程中,测试用例的状态是唯一的,一般是下列三种状态中的一种:通过、未通过、未进行测试。

32、在进行等价类划分的过程中,不但要考虑有效等价类划分,同时要考虑

无效等价类划分。

33、自动化测试测试技术主要包括:代码分析、捕获和回放、脚本技术、自动化比较、虚拟用户。 34、文档测试主要检查文档的正确性、完备性、易理解性和一致性。

35、在软件兼容性测试中向后兼容是只可以使用以前版本的软件,而向前兼容指的是可

以使用未来版本的软件。

36、跟踪测试用例,包括以下两方面的内容:测试用例执行的跟踪和测试用例覆盖率的

跟踪。

37、软件的健壮性包含了容错—能力和恢复能力。

38、代码审查的参与人员为协调人、编码人员、模块设计人员和一名测试专家。 39、兼容性测试包括软件兼容性、数据共享兼容性、硬件兼容性三个方面。 40、Junit是一个开放源代码的java测试框架,用于编写和运行可重复的测试。

四、问答

1、什么是桩模块,什么是驱动模块

桩模块:用来模拟被测试模块工作过程中所调用的模块。 驱动模块:用来模拟被测试模块的上一级模块。

2、用黑盒测试设计测试用例有哪些常用方法

等价类划分法、边界值划分法、错误推测法、因果图法、场景法

3、软件测试工作过程有哪些

确定测试计划、设计测试用例、测试执行、测试总结

4、简述软件测试自动化和手工测试各自的适用范围

(1)在系统功能逻辑测试、验收测试、适用性测试、涉及人机交互性测试时,多采用黑盒测试的手工测

试方法。

(2)单元测试、集成测试、系统负载或性能测试、稳定性测试、可靠性测试等比较适合采用自动化测试。 (3)对那种不稳定软件的测试、开发周期很短的软件或一次性的软件等不适合测试自动化。 5、简述测试需求分析包括哪些方面的工作。

(1)明确测试范围,了解哪些功能点要测试,哪些功能点不需要测试。 (2)知道哪些测试目标优先级高,哪些目标优先级低。 (3)要完成哪些相应的测试任务才能确保目标的实现。

6、在设计测试用例时,除了要遵守基本的测试用例编写规范外,还需要遵循一些基本的原则,请简述

这些原则。

(1)避免含糊的测试用例。

(2)尽量将具有相类似功能的测试用例抽象并归类。 (3)尽量避免冗长和复杂的测试用例。 7、验收测试的注意事项有哪些

1、必须编写正式的、单独的验收测试计划。改计划中必须有明确的验收标准。 2、验收测试必须在实际运行环境中或尽可能模拟实际的环境中进行。 3、验收测试一般需要由用户和测试部门共同完成。

8、测试工具LoadRunner简介

LoadRunner是一种适用于各种体系结构的自动负载测试工具,它能预测系统行为并优化系统性能。 9、集成测试的两种模式是什么

1、非渐增式测试模式:先分别测试每个模块,再把所有模块按设计要求放在一起结合成所要的程序,

如大棒式。

2、渐增式测试模式:把下一个要测试的模块同已经测试好的模块结合起来进行测试,测试完以后再把

下一个应该测试的模块结合进来测试。

10、工作分解结构表(WorkBreakdownStructure,WBS)是较专业的测试工作量估算方法,请阐述这种方法

的三个步骤。

(1)列出本项目需要完成的各项任务,如测试计划、需求和设计评审、测试设计、脚本开

发、测试执行等。

(2)对每个任务进一步细分,可进行多层次的细分,直到不能细分为止。

(3)列出需要完成的所有任务之后,根据任务的层次给任务进行编号,就行成了完成的工

作分解结构表。

11、系统性能问题一般可分为三类,请列举出这三类问题。 (1)资源耗尽,如CPU使用率达到100%。

(2)资源泄露,如内存泄漏,最终会导致资源耗尽。 (3)资源瓶颈,如线程、GDI、DB连接等资源变得稀缺。 12、简述性能测试指标有哪些,各有什么作用。

吞吐量(TPS)单位时间内处理的客户端请求数量,体现处理的容量;

响应时间(ResponseTime):服务器对每个应用请求的处理时间,体现处理的速度资源利用率,体现系统资源的使用程度

13、正交实验法设计测试的整体步骤是什么 1、确定影响功能的因子与状态。 2、选择一个合适的正交表。 3、利用正交表构造测试数据集。

14、为了构造有效的测试套件,通常情况下,可以使用哪些方法来组织测试用例 (1)按照程序的功能模块组织。 (2)按照测试用例的类型组织。 (3)按照测试用例的优先级组织。 15、验收测试的通过标准是什么

(1)完全执行了验收测试计划中的每个测试用例

(2)在验收测试中发现的错误已经得到修改并且通过了测试或者经过评估留到下一版本中

修改

(3)完成软件验收测试报告。

16、简述基本路径测试法的几个基本步骤。 (1)根据程序的流程图,计算程序环路复杂度。 (2)确定基本路径。

(3)准备测试用例,确保基本路径组中的每一条路径被执行一次。 17、为什么要使用决策表,决策表有什么优缺点。

当输入条件之间的组合对输出结果具有影响。可以使用决策表解决。

优点:它能把复杂的问题按各种可能的情况一一列举出来,简明而易于理解,也可避免 遗漏。

缺点:不能表达重复执行的动作,例如循环结构。

18、简述软件测试中的Pareto80/20规律。

(1) 一个软件产品或系统中全部功能的20%是常用功能,用户的80%的时间都在使用这20%的功能;

而软件产品或系统中剩下的80%不是常用的功能,用户使用得比较少,只有20%的时间在使用剩下的

80%功能。

(2)测试发现的所有错误的80%很可能集中在20%的程序模块中,另外20%的错误很可能集中在80%

的程序模块中。

19、黑盒测试中常用到判定表方法,请简述判定表制定一般经过的4个步骤。 (1)列出所有条件桩和动作桩; (2)填入条件项;

(3)填入动作项,制定初始判定表;

(4)简化、合并相似规则或者相同动作 20、简述用来描述Web性能需求的两种方式。

1、基于Web应用系统的在线用户和响应时间来度量系统性能。 2、基于Web应用系统的吞吐量和响应时间来度量系统性能。 21、验收测试的通过标准是什么。

(1)完全执行了验收测试计划中的每个测试用例

(2)在验收测试中发现的错误已经得到修改并且通过了测试或者经过评估留到下一版本中

修改。

(3)完成软件验收测试报告。 22、简述软件缺陷产生的原因。

(1)用户需求和说明书没有被很好的理解分析人员不能100%理解用户需求,写作水平不高; (2)软件设计的不合理设计人员不能100%理解需求文档,设计水平不高; (3)代码(算法,流程)存在错误编码人员不能100%理解设计文档,编码水平不高。

五、名词解释

1、软件缺陷:从产品内部看,缺陷是软件产品开发或维护过程中存在的错误、毛病等各种问题;从产

品外部看,缺陷是系统所需要实现的某种功能的失效或违背。

2、单元测试:单元测试是对软件基本组成单元进行的测试。

3、软件缺陷生命周期:软件缺陷生命周期指的是一个软件缺陷被发现、报告到这个缺陷被修复、验证

直至最后关闭的完整过程。

4、软件测试:软件测试是贯穿整个软件开发生命周期、对软件产品(包括阶段性产品)进行验证和确

认的活动过程,其目的是尽快尽早地发现在软件产品中所存在的各种问题一一与用户需求、预先定义的不一致性。

5、测试套件:测试套件是根据特定的测试目标和任务而构造的某个测试用例的集合。 6、测试策略:测试策略通常是描述测试项目的目标和所采用的测试方法,确定在不同的测

试阶段测试范围、测试任务的优先级,以及所采用的测试技术和工具,以获得最有效的测试 和可能达到的质量水平。

7、软件国际化:软件国际化是为了解决软件能在各种不同语言、不同风俗的国家和地区使用的问题,

对计算机设计和编程所做出的某些规定。

8、无效等价类:对于程序的规格说明,是不合理的、没有意义的输入数据构成的集合。 9、系统测试:系统测试是将经过集成测试过后的软件,作为计算机系统的一个部分,与计

算机硬件、某些支持软件、数据和人员等系统元素结合起来,在实际运行环境下对计算机系 统进行一系列的严格有效的测试来发现软件的潜在问题,保证系统的运行。

10、功能测试:功能测试就是对产品的各功能进行验证,根据功能测试用例,逐项测试,检查产品是

否达到用户要求的功能。

11、动态测试:指通过运行程序发现错误。

12、性能测试:性能测试就是为了发现系统性能问题或获取系统性能相关指标而进行的测试。 13、测试用例:测试用例是为了特定的测试目的(如考察特定程序路径或验证某个产品特性)而设计

的测试条件、测试数据及与之相关的测试规程的一个特定的使用实例或场景。

14、条件覆盖:指设计足够测试用例,使判定表达式中每个条件的各种可能的值至少出现一次。 15、驱动模块:指用来模拟被测模块的上级调用模块,其功能比真正的上级模块简单得多,

它只完成接受测试数据,以上级模块调用被测模块的格式驱动被测模块,接收被测模块的测 试结果并输出。

16、判定覆盖:判定覆盖的基本思想是设计若干用例,运行被测程序,使得程序中每个判断的取真分

支和取假分支至少经历一次,即判断的真假值均曾被满足。

17、静态测试:静态测试包括对软件产品的需求和设计规格说明书的评审、对程序代码的审

查以及静态分析等。

18、验收测试:验收测试是在软件产品完成了功能测试和系统测试之后,产品发布之前所进

行的软件测试活动。它是技术测试的最后一个阶段,也成为交付测试。

19、软件配置项:软件配置项是软件工程中产生的信息项,它是配置管理的基本单位,对已

成为基线的SCI,虽然可以修改,但必须按照一个特殊的正确的过程进行评估,确认每一处 的修改。

20、条件覆盖:条件覆盖的基本思想是设计若干测试用例,执行被测试程序以后,要是使个

判断中每个条件的可能取值至少满足一次。

21、集成测试:在单元测试的基础上,按照设计要求,将所有单元(模块/组件)组装成为系统而进行

的测试,通过测试,可以发现单元之间关系和接口中的错误。

22、缺陷的已修正或修复状态:已被开发人员检查、修复过的缺陷,通过单元测试,认为已解决但还

没有被测试人员验证。

23、容错性测试:容错性测试主要检查系统的容错能力,检查软件在异常条件下自身是否具

有防护性的措施或者某种灾难性恢复的手段。

24、自动化测试:使用一种自动化测试工具来验证各种软件测试的需求,它包括测试活动的管理与实施、测试脚本的开发与执行。

六、应用题:

1、问题要求:”……对功率大于50马力的机器、维修记录不全或已运行

10

年以上

的机器,应给予优先的维修处理……”。这里假定,”维修记录不全”维和“优先 修处理”均已在别处有更严格的定义。请建立判定表。

2、按要求给出下列程序的测试用例(要求写出必要的说明)。

(1)语句覆盖 (2)判定覆盖 (3)条件覆盖

3、按要求给出下列程序的流程图和测试用例(要求写出必要的说

明)publicintcalculate(intx,inty,intz){

if(x>0&&y>0){

z=z*x; }

if(x>1||z>1){

z=z+3; } z=y+z; returnz; }

(1)画出程序流程图 (2)语句覆盖测试用例 (3)判定覆盖测试用例

(4)条件覆盖测试用例 (5)判定-条件覆盖测试用例 (6)条件组合覆盖测试用例

4、根据下列条件,使用等价划分法设计测试用例。

某16位微机,其十六进制常数定义为:以Ox或OX开头的数是十六进制整数,其值的 范围是-7fff〜7fff(表示十六进制的大小写字母不加区别)。

解:(1)划分等价类并编号:(6分)

表1、等价类划分的结果

输入等价类 以ox或OX开头 值的范围 字长 有效等价类 ①以ox开头 ②以OX开头 ④值的范围在-Oxffff〜Oxffff 之间 ⑦双字节16位 ⑤小于-Ox7fff ⑥大于Ox7fff 无效等价类 ③不以ox或OX开头 ⑧0位 ⑨大于双字节16位 (2)设计测试用例,以便覆盖所有的有效等价类:(2分) 在表1中列出了3个有效等价类,编号分别为①、②、④、⑦,设计的测试用例如下: 测试数据期望结果覆盖的有效等价类

ox6A8D输入有效①、④、⑦ OX4C7E输入有效②、④、⑦

(3)为每一个无效等价类设计一个测试用例,设计结果如下:(5分)

测试数据

期望结果 无效输入 无效输入 无效输入 无效输入 无效输入

覆盖的无效等价类

③不以Ox或OX开头 ⑤小于-Ox7fff ⑥大于Ox7fff

R8VW48 -Ox9C80 Ox8000 Ox Oxffff1

⑧0位

⑨大于双字节16位

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